[INFO] cloning repository https://github.com/jhkim8/ajtai-merkle-proof
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jhkim8/ajtai-merkle-proof" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjhkim8%2Fajtai-merkle-proof", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjhkim8%2Fajtai-merkle-proof'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6bfce7769c581de798cf54b508f720f086a068ad
[INFO] fixing jhkim8/ajtai-merkle-proof against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjhkim8%2Fajtai-merkle-proof" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jhkim8/ajtai-merkle-proof
[INFO] finished tweaking git repo https://github.com/jhkim8/ajtai-merkle-proof
[INFO] tweaked toml for git repo https://github.com/jhkim8/ajtai-merkle-proof written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jhkim8/ajtai-merkle-proof on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jhkim8/ajtai-merkle-proof already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: unused manifest key: profile.test.opt-leel
[INFO] [stderr] warning: `ajtai` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/arkworks-rs/r1cs-std`
[INFO] [stderr]     Updating git repository `https://github.com/arkworks-rs/snark`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded merlin v3.0.0
[INFO] [stderr]   Downloaded ark-std v0.5.0
[INFO] [stderr]   Downloaded colored v2.2.0
[INFO] [stderr]   Downloaded tokio-macros v0.2.6
[INFO] [stderr]   Downloaded keccak v0.1.6
[INFO] [stderr]   Downloaded ark-serialize-derive v0.5.0
[INFO] [stderr]   Downloaded enum-ordinalize-derive v4.3.2
[INFO] [stderr]   Downloaded mio-uds v0.6.8
[INFO] [stderr]   Downloaded enum-ordinalize v4.3.2
[INFO] [stderr]   Downloaded num_cpus v1.17.0
[INFO] [stderr]   Downloaded nt-network v3.0.0
[INFO] [stderr]   Downloaded ark-ff-asm v0.5.0
[INFO] [stderr]   Downloaded multimap v0.5.0
[INFO] [stderr]   Downloaded rayon v1.12.0
[INFO] [stderr]   Downloaded ark-serialize v0.5.0
[INFO] [stderr]   Downloaded ark-ff-macros v0.5.0
[INFO] [stderr]   Downloaded nt v3.0.0
[INFO] [stderr]   Downloaded tokio-util v0.2.0
[INFO] [stderr]   Downloaded pin-project-lite v0.1.12
[INFO] [stderr]   Downloaded mio-named-pipes v0.1.7
[INFO] [stderr]   Downloaded env_filter v1.0.1
[INFO] [stderr]   Downloaded nt-leb128 v0.3.1
[INFO] [stderr]   Downloaded nalgebra-macros v0.3.0
[INFO] [stderr]   Downloaded net2 v0.2.39
[INFO] [stderr]   Downloaded ark-snark v0.5.1
[INFO] [stderr]   Downloaded educe v0.6.0
[INFO] [stderr]   Downloaded env_logger v0.11.10
[INFO] [stderr]   Downloaded criterion-plot v0.6.0
[INFO] [stderr]   Downloaded ark-relations v0.5.1
[INFO] [stderr]   Downloaded ark-crypto-primitives-macros v0.5.0
[INFO] [stderr]   Downloaded ark-poly v0.5.0
[INFO] [stderr]   Downloaded ark-ec v0.5.0
[INFO] [stderr]   Downloaded bytes v0.5.6
[INFO] [stderr]   Downloaded simba v0.9.1
[INFO] [stderr]   Downloaded portable-atomic-util v0.2.7
[INFO] [stderr]   Downloaded ark-groth16 v0.5.0
[INFO] [stderr]   Downloaded ark-ff v0.5.0
[INFO] [stderr]   Downloaded safe_arch v0.7.4
[INFO] [stderr]   Downloaded jiff-static v0.2.24
[INFO] [stderr]   Downloaded wide v0.7.33
[INFO] [stderr]   Downloaded ark-crypto-primitives v0.5.0
[INFO] [stderr]   Downloaded glam v0.14.0
[INFO] [stderr]   Downloaded criterion v0.7.0
[INFO] [stderr]   Downloaded ark-r1cs-std v0.5.0
[INFO] [stderr]   Downloaded futures v0.1.31
[INFO] [stderr]   Downloaded glam v0.17.3
[INFO] [stderr]   Downloaded glam v0.15.2
[INFO] [stderr]   Downloaded glam v0.16.0
[INFO] [stderr]   Downloaded glam v0.19.0
[INFO] [stderr]   Downloaded glam v0.18.0
[INFO] [stderr]   Downloaded tracing-subscriber v0.2.25
[INFO] [stderr]   Downloaded glam v0.20.5
[INFO] [stderr]   Downloaded glam v0.23.0
[INFO] [stderr]   Downloaded glam v0.22.0
[INFO] [stderr]   Downloaded glam v0.21.3
[INFO] [stderr]   Downloaded glam v0.24.2
[INFO] [stderr]   Downloaded glam v0.25.0
[INFO] [stderr]   Downloaded nalgebra v0.34.2
[INFO] [stderr]   Downloaded tokio v0.2.25
[INFO] [stderr]   Downloaded ark-bls12-381 v0.5.0
[INFO] [stderr]   Downloaded glam v0.28.0
[INFO] [stderr]   Downloaded glam v0.29.3
[INFO] [stderr]   Downloaded jiff v0.2.24
[INFO] [stderr]   Downloaded glam v0.30.10
[INFO] [stderr]   Downloaded glam v0.31.1
[INFO] [stderr]   Downloaded glam v0.32.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a
[INFO] running `Command { std: "docker" "start" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: unused manifest key: profile.test.opt-leel
[INFO] [stderr] warning: `ajtai` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking pin-project-lite v0.2.17
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking keccak v0.1.6
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking bytes v0.5.6
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking tracing-subscriber v0.2.25
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking hashbrown v0.17.1
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking pin-project-lite v0.1.12
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking itoa v1.0.18
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]     Checking nt-leb128 v0.3.1
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking criterion-plot v0.6.0
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking jiff v0.2.24
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking util v0.1.0 (/opt/rustwide/workdir/hyperplonk/util)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> hyperplonk/util/src/lib.rs:22:49
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn parallelizable_slice_iter<T: Sync>(data: &[T]) -> rayon::slice::Iter<T> {
[INFO] [stdout]    |                                                 ^^^^     ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn parallelizable_slice_iter<T: Sync>(data: &[T]) -> rayon::slice::Iter<'_, T> {
[INFO] [stdout]    |                                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking simba v0.9.1
[INFO] [stderr]     Checking env_filter v1.0.1
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling tokio-macros v0.2.6
[INFO] [stderr]     Checking env_logger v0.11.10
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling enum-ordinalize-derive v4.3.2
[INFO] [stderr]    Compiling ark-serialize-derive v0.5.0
[INFO] [stderr]    Compiling ark-ff-macros v0.5.0
[INFO] [stderr]    Compiling ark-ff-asm v0.5.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ark-crypto-primitives-macros v0.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]     Checking tokio v0.2.25
[INFO] [stderr]    Compiling nalgebra-macros v0.3.0
[INFO] [stderr]    Compiling ark-crypto-primitives-macros v0.5.0 (/opt/rustwide/workdir/crypto-primitives/macros)
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling enum-ordinalize v4.3.2
[INFO] [stderr]    Compiling educe v0.6.0
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking merlin v3.0.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking multimap v0.5.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking nalgebra v0.34.2
[INFO] [stderr]     Checking tokio-util v0.2.0
[INFO] [stderr]     Checking nt-network v3.0.0
[INFO] [stderr]     Checking nt v3.0.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking criterion v0.7.0
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking ark-std v0.5.0
[INFO] [stderr]     Checking ark-serialize v0.5.0
[INFO] [stderr]     Checking ark-ff v0.5.0
[INFO] [stderr]     Checking ark-poly v0.5.0
[INFO] [stderr]     Checking ark-relations v0.5.1
[INFO] [stderr]     Checking transcript v0.1.0 (/opt/rustwide/workdir/hyperplonk/transcript)
[INFO] [stderr]     Checking ark-snark v0.5.1
[INFO] [stderr]     Checking ark-ec v0.5.0
[INFO] [stderr]     Checking ark-relations v0.5.1 (https://github.com/arkworks-rs/snark#845ce9d5)
[INFO] [stderr]     Checking ark-snark v0.5.1 (https://github.com/arkworks-rs/snark#845ce9d5)
[INFO] [stderr]     Checking ark-bls12-381 v0.5.0
[INFO] [stderr]     Checking ark-crypto-primitives v0.5.0
[INFO] [stderr]     Checking ark-r1cs-std v0.5.0
[INFO] [stderr]     Checking ark-crypto-primitives v0.5.0 (/opt/rustwide/workdir/crypto-primitives/crypto-primitives)
[INFO] [stderr]     Checking ark-poly-commit v0.5.0 (/opt/rustwide/workdir/poly-commit/poly-commit)
[INFO] [stderr]     Checking ark-groth16 v0.5.0
[INFO] [stderr]     Checking arithmetic v0.1.0 (/opt/rustwide/workdir/hyperplonk/arithmetic)
[INFO] [stdout] warning: unused import: `MultilinearExtension`
[INFO] [stdout]   --> hyperplonk/arithmetic/src/virtual_polynomial.rs:12:43
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_poly::{DenseMultilinearExtension, MultilinearExtension, Polynomial};
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking subroutines v0.1.0 (/opt/rustwide/workdir/hyperplonk/subroutines)
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]   --> hyperplonk/subroutines/src/pcs/univariate_kzg/srs.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_ff::PrimeField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> hyperplonk/subroutines/src/poly_iop/sum_check/prover.rs:192:42
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 .filter(|&(i, _point_i)| (i != j))
[INFO] [stdout]     |                                          ^      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 192 -                 .filter(|&(i, _point_i)| (i != j))
[INFO] [stdout] 192 +                 .filter(|&(i, _point_i)| i != j)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> poly-commit/poly-commit/src/sonic_pc/data_structures.rs:73:19
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn powers(&self) -> kzg10::Powers<E> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn powers(&self) -> kzg10::Powers<'_, E> {
[INFO] [stdout]    |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> poly-commit/poly-commit/src/sonic_pc/data_structures.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         &self,
[INFO] [stdout]    |         ^^^^^ the lifetime is elided here
[INFO] [stdout] 83 |         degree_bound: impl Into<Option<usize>>,
[INFO] [stdout] 84 |     ) -> Option<kzg10::Powers<E>> {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |     ) -> Option<kzg10::Powers<'_, E>> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking ajtai v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::crh::AjtaiCRH`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     use crate::hash::ajtai::crh::AjtaiCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::crh::CRHScheme`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     use ark_crypto_primitives::crh::CRHScheme;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     use ark_ff::{Field, PrimeField};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use ark_std::UniformRand;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nalgebra::SVector`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     use nalgebra::SVector;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AjtaiConfig`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |     use crate::hash::ajtai::config::{AjtaiConfig, Size};
[INFO] [stdout]    |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::crh::AjtaiCRH`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     use crate::hash::ajtai::crh::AjtaiCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::two_to_one::AjtaiTwoToOneCRH`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     use crate::hash::ajtai::two_to_one::AjtaiTwoToOneCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::SerializeDMatrix`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     use crate::utils::matrix::SerializeDMatrix;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CRHScheme` and `TwoToOneCRHScheme`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:60:38
[INFO] [stdout]    |
[INFO] [stdout] 60 |     use ark_crypto_primitives::crh::{CRHScheme, TwoToOneCRHScheme};
[INFO] [stdout]    |                                      ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::config::SetupConfig`
[INFO] [stdout]  --> src/protocol/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::SetupConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_relations::r1cs::ConstraintSynthesizer`
[INFO] [stdout]  --> src/protocol/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_relations::r1cs::ConstraintSynthesizer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalDeserialize` and `CanonicalSerialize`
[INFO] [stdout]  --> src/protocol/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_serialize::{CanonicalDeserialize, CanonicalSerialize};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_snark::SNARK`
[INFO] [stdout]  --> src/protocol/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_snark::SNARK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CryptoRng` and `RngCore`
[INFO] [stdout]  --> src/protocol/mod.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ark_std::rand::{CryptoRng, RngCore};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proof::Proof`
[INFO] [stdout]  --> src/protocol/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use proof::Proof;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `public_input::IntoVec`
[INFO] [stdout]   --> src/protocol/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use public_input::IntoVec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::hash::ajtai;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PcsConfig`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_parameters::PublicParameters`
[INFO] [stdout]   --> src/protocol/impls/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::public_parameters::PublicParameters;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::merkle_tree::AjtaiMerkleTreeConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::merkle_tree::AjtaiMerkleTreeConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/impls/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/config.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/config.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `subroutines::PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/protocol/impls/proof.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use subroutines::PolynomialCommitmentScheme;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `set_if_some`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | macro_rules! set_if_some {
[INFO] [stdout]   |              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/protocol/impls/setup.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::to_vector`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::utils::matrix::to_vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseMultilinearExtension` and `Polynomial`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_poly::{DenseMultilinearExtension, Polynomial};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DVector` and `stack`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, stack};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/opt/config_opt.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Neg`
[INFO] [stdout]   --> src/protocol/impls/opt/prover_opt.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::ops::{Add, Neg};
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/impls/opt/public_inputs_opt.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]  --> src/protocol/proof.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::pairing::Pairing;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `new_column_vector` and `random_dmatrix`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:204:32
[INFO] [stdout]     |
[INFO] [stdout] 204 |     use crate::utils::matrix::{new_column_vector, random_dmatrix};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AdditiveGroup` and `Field`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:206:18
[INFO] [stdout]     |
[INFO] [stdout] 206 |     use ark_ff::{AdditiveGroup, Field, PrimeField};
[INFO] [stdout]     |                  ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::R1CSVar`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:207:9
[INFO] [stdout]     |
[INFO] [stdout] 207 |     use ark_r1cs_std::R1CSVar;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::convert::ToConstraintFieldGadget`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |     use ark_r1cs_std::convert::ToConstraintFieldGadget;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ConstraintSystem`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:210:54
[INFO] [stdout]     |
[INFO] [stdout] 210 |     use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystem, ConstraintSystemRef};
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dmatrix`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:213:38
[INFO] [stdout]     |
[INFO] [stdout] 213 |     use nalgebra::{DMatrix, DVector, dmatrix};
[INFO] [stdout]     |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RoundChallengeVar` and `RoundPolyVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:2:45
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::iop::sumcheck::gadgets::rounds::{RoundChallengeVar, RoundPolyVar};
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::snark::gadgets::matrix::Dim2VecVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::protocol::snark::gadgets::matrix::Dim2VecVar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ff::PrimeField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::prelude::EqGadget`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_r1cs_std::prelude::EqGadget;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::AllocVar` and `fields::fp::FpVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_r1cs_std::{alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSynthesizer`, `ConstraintSystemRef`, and `SynthesisError`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, SynthesisError};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `R1CSVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_r1cs_std::{R1CSVar, alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VirtualPolynomial`
[INFO] [stdout]  --> src/utils/polynomial.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arithmetic::{VirtualPolynomial, fix_last_variables};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]   --> src/utils/polynomial.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ec::pairing::Pairing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_iter_mut`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DimMul`
[INFO] [stdout]   --> src/utils/polynomial.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, DVector, DimMul};
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Commitment`, `MultilinearKzgPCS`, `MultilinearProverParam`, and `PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/utils/polynomial.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Commitment, MultilinearKzgPCS, MultilinearProverParam, PCSError, PolynomialCommitmentScheme,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils/polynomial.rs:90:49
[INFO] [stdout]    |
[INFO] [stdout] 90 |         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout]    |                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout] 90 +         evaluations[row + column * h.nrows()] = h[(*row, *column)] ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use ark_std::UniformRand;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::config::SetupConfig`
[INFO] [stdout]  --> src/protocol/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::SetupConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_relations::r1cs::ConstraintSynthesizer`
[INFO] [stdout]  --> src/protocol/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_relations::r1cs::ConstraintSynthesizer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalDeserialize` and `CanonicalSerialize`
[INFO] [stdout]  --> src/protocol/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_serialize::{CanonicalDeserialize, CanonicalSerialize};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_snark::SNARK`
[INFO] [stdout]  --> src/protocol/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_snark::SNARK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CryptoRng` and `RngCore`
[INFO] [stdout]  --> src/protocol/mod.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ark_std::rand::{CryptoRng, RngCore};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proof::Proof`
[INFO] [stdout]  --> src/protocol/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use proof::Proof;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `public_input::IntoVec`
[INFO] [stdout]   --> src/protocol/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use public_input::IntoVec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::hash::ajtai;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PcsConfig`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_parameters::PublicParameters`
[INFO] [stdout]   --> src/protocol/impls/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::public_parameters::PublicParameters;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::merkle_tree::AjtaiMerkleTreeConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::merkle_tree::AjtaiMerkleTreeConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/impls/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/config.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/config.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `subroutines::PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/protocol/impls/proof.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use subroutines::PolynomialCommitmentScheme;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `set_if_some`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | macro_rules! set_if_some {
[INFO] [stdout]   |              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/protocol/impls/setup.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::to_vector`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::utils::matrix::to_vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseMultilinearExtension` and `Polynomial`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_poly::{DenseMultilinearExtension, Polynomial};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DVector` and `stack`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, stack};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/opt/config_opt.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Neg`
[INFO] [stdout]   --> src/protocol/impls/opt/prover_opt.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::ops::{Add, Neg};
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/impls/opt/public_inputs_opt.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]  --> src/protocol/proof.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::pairing::Pairing;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RoundChallengeVar` and `RoundPolyVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:2:45
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::iop::sumcheck::gadgets::rounds::{RoundChallengeVar, RoundPolyVar};
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::snark::gadgets::matrix::Dim2VecVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::protocol::snark::gadgets::matrix::Dim2VecVar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ff::PrimeField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::prelude::EqGadget`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_r1cs_std::prelude::EqGadget;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::AllocVar` and `fields::fp::FpVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_r1cs_std::{alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSynthesizer`, `ConstraintSystemRef`, and `SynthesisError`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, SynthesisError};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `R1CSVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_r1cs_std::{R1CSVar, alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]    --> src/utils/matrix.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     use ark_std::UniformRand;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VirtualPolynomial`
[INFO] [stdout]  --> src/utils/polynomial.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arithmetic::{VirtualPolynomial, fix_last_variables};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]   --> src/utils/polynomial.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ec::pairing::Pairing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_iter_mut`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DimMul`
[INFO] [stdout]   --> src/utils/polynomial.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, DVector, DimMul};
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Commitment`, `MultilinearKzgPCS`, `MultilinearProverParam`, and `PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/utils/polynomial.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Commitment, MultilinearKzgPCS, MultilinearProverParam, PCSError, PolynomialCommitmentScheme,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils/polynomial.rs:90:49
[INFO] [stdout]    |
[INFO] [stdout] 90 |         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout]    |                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout] 90 +         evaluations[row + column * h.nrows()] = h[(*row, *column)] ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_poly::DenseUVPolynomial`
[INFO] [stdout]    --> src/utils/polynomial.rs:612:9
[INFO] [stdout]     |
[INFO] [stdout] 612 |     use ark_poly::DenseUVPolynomial;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_poly::univariate::DensePolynomial`
[INFO] [stdout]    --> src/utils/polynomial.rs:613:9
[INFO] [stdout]     |
[INFO] [stdout] 613 |     use ark_poly::univariate::DensePolynomial;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/utils/matrix.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/setup.rs:3:42
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use ark_std::iterable::Iterable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn setup<R: Rng>(r: &mut R) -> Result<Self::Parameters, Error> {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 .fold(F::zero(), |acc, (b, c)| acc + b)
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .filter(|(a, b)| **b)
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rounds`
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let num_rounds = r_challenge.len();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding_rows`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let padding_rows = max(tilde_m_row_size, h_row_size) - min(tilde_m_row_size, h_row_size);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:389:13
[INFO] [stdout]     |
[INFO] [stdout] 389 |         let mut f = VirtualPolynomial::new(num_variables);
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_size`
[INFO] [stdout]   --> src/protocol/impls/opt/test_randoms_opt.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let x_size = bit_width(m_row_size);
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use ark_std::iterable::Iterable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/setup.rs:3:42
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/utils/matrix.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 |         for (i, row) in parameter.matrix.0.row_iter().enumerate() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn setup<R: Rng>(r: &mut R) -> Result<Self::Parameters, Error> {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameter`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let parameter = AjtaiCRH::<F, Size2x22logq>::setup(&mut rng).unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 .fold(F::zero(), |acc, (b, c)| acc + b)
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .filter(|(a, b)| **b)
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rounds`
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let num_rounds = r_challenge.len();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding_rows`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let padding_rows = max(tilde_m_row_size, h_row_size) - min(tilde_m_row_size, h_row_size);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:389:13
[INFO] [stdout]     |
[INFO] [stdout] 389 |         let mut f = VirtualPolynomial::new(num_variables);
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_size`
[INFO] [stdout]   --> src/protocol/impls/opt/test_randoms_opt.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let x_size = bit_width(m_row_size);
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `polynomial` is never read
[INFO] [stdout]    --> src/utils/polynomial.rs:377:48
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut polynomial: Vec<Monomial<F>> = Vec::new();
[INFO] [stdout]     |                                                ^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] 378 |         polynomial = [p1, p2].concat();
[INFO] [stdout]     |         ---------- `polynomial` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `IntoVec` is more private than the item `AmhScheme::PublicInputs`
[INFO] [stdout]   --> src/protocol/scheme.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     type PublicInputs: Clone + IntoVec<Item = F>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `AmhScheme::PublicInputs` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `IntoVec` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/protocol/public_input.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | pub(crate) trait IntoVec {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 |     type F = Fr;
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Size2x22logq` is never constructed
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 |     struct Size2x22logq;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     type F = Fr;
[INFO] [stdout]    |          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Size2x22logq` is never constructed
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 |     struct Size2x22logq;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_matrix` is never used
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn test_matrix() -> DMatrix<F> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn transpose<T: Clone>(matrix: Vec<Vec<T>>) -> Vec<Vec<T>> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_local_hash_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:517:4
[INFO] [stdout]     |
[INFO] [stdout] 517 | fn prove_local_hash_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_booleanity_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:560:4
[INFO] [stdout]     |
[INFO] [stdout] 560 | fn prove_booleanity_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:785:15
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub(crate) fn o1_global_table_opening_points<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:832:4
[INFO] [stdout]     |
[INFO] [stdout] 832 | fn o1_global_opening_evals<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:862:4
[INFO] [stdout]     |
[INFO] [stdout] 862 | fn table_points_for_rows<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:871:4
[INFO] [stdout]     |
[INFO] [stdout] 871 | fn table_points_for_rows_with_column_points<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:881:15
[INFO] [stdout]     |
[INFO] [stdout] 881 | pub(crate) fn table_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_subproof_inputs` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:954:15
[INFO] [stdout]     |
[INFO] [stdout] 954 | pub(crate) fn derive_subproof_inputs<E: Pairing>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_table_subproof_inputs` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1007:15
[INFO] [stdout]      |
[INFO] [stdout] 1007 | pub(crate) fn derive_table_subproof_inputs<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_global_opening_context` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1218:15
[INFO] [stdout]      |
[INFO] [stdout] 1218 | pub(crate) fn append_global_opening_context<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_matrix_rows` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1432:4
[INFO] [stdout]      |
[INFO] [stdout] 1432 | fn evaluate_matrix_rows<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multilinear_eq_weights` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1474:4
[INFO] [stdout]      |
[INFO] [stdout] 1474 | fn multilinear_eq_weights<F: PrimeField>(point: &[F]) -> Vec<F> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_diff_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:850:4
[INFO] [stdout]     |
[INFO] [stdout] 850 | fn table_aware_wiring_diff_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_parent_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:996:4
[INFO] [stdout]     |
[INFO] [stdout] 996 | fn table_aware_shifted_parent_point<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invalid_proof_as_false` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn invalid_proof_as_false(result: Result<bool, ProtocolError>) -> Result<bool, ProtocolError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:806:4
[INFO] [stdout]     |
[INFO] [stdout] 806 | fn global_opening_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:821:4
[INFO] [stdout]     |
[INFO] [stdout] 821 | fn global_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:852:4
[INFO] [stdout]     |
[INFO] [stdout] 852 | fn global_table_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:902:4
[INFO] [stdout]     |
[INFO] [stdout] 902 | fn table_points_for_rows<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:911:4
[INFO] [stdout]     |
[INFO] [stdout] 911 | fn table_points_for_rows_with_column_points<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModGlobalOpeningEvals` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:921:8
[INFO] [stdout]     |
[INFO] [stdout] 921 | struct QModGlobalOpeningEvals<'a, F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_table_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:934:4
[INFO] [stdout]     |
[INFO] [stdout] 934 | fn split_global_table_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:997:4
[INFO] [stdout]     |
[INFO] [stdout] 997 | fn split_global_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1035:4
[INFO] [stdout]      |
[INFO] [stdout] 1035 | fn booleanity_eval_from_evals<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:215:10
[INFO] [stdout]     |
[INFO] [stdout] 215 |     type F = Fr;
[INFO] [stdout]     |          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circuit` is never constructed
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:326:12
[INFO] [stdout]     |
[INFO] [stdout] 326 |     struct Circuit<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_decomposition_le` is never used
[INFO] [stdout]   --> src/utils/field_ops.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) fn bit_decomposition_le<F: PrimeField>(x: u64, bit_length: usize) -> Vec<F> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_num_variables` is never used
[INFO] [stdout]   --> src/utils/matrix.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn compute_num_variables(row: usize, column: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_indices_column_major` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) fn matrix_indices_column_major(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hadamard_product` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub(crate) fn hadamard_product<T: Copy + ark_std::ops::Mul<Output = T>>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_column_vector` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn new_column_vector<T: Clone + PartialEq + Debug + 'static>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `omatrix_to_dmatrix` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub(crate) fn omatrix_to_dmatrix<F: PrimeField, R: Dim, C: Dim>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_poly_by_positions` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:81:15
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub(crate) fn compute_poly_by_positions<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_last_at_point` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn fix_last_at_point<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerate_evaluations` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:104:15
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub(crate) fn enumerate_evaluations<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl<F: PrimeField> Monomial<F> {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn default() -> Monomial<F> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `evaluate` and `degree` are never used
[INFO] [stdout]    --> src/utils/polynomial.rs:214:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | impl<F: PrimeField> UnivariatePolynomial<F> {
[INFO] [stdout]     | ------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn evaluate(&self, x: F) -> F {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn degree(&mut self) -> Option<u32> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mle_evals_to_coeffs` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn mle_evals_to_coeffs<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_vector` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:428:8
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn scale_vector<F>(vector: Vec<F>, k: F) -> Vec<F>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dense_coeffs_to_sparse_poly` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:439:8
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub fn dense_coeffs_to_sparse_poly<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_scale_sparse_polynomial` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 | pub fn manual_scale_sparse_polynomial<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_terms` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:521:4
[INFO] [stdout]     |
[INFO] [stdout] 521 | fn multiply_terms<T>(term1: &T, term2: &T) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_multiply_sparse_polynomials` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:548:8
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub fn manual_multiply_sparse_polynomials<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_constant` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:582:8
[INFO] [stdout]     |
[INFO] [stdout] 582 | pub fn subtract_constant<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |                  ^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 12 - pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout] 12 + pub type A256<E> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<<E as /* Trait */>::ScalarField, 256>;
[INFO] [stdout]    |                                             +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:396:21
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     let _ = acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:507:13
[INFO] [stdout]     |
[INFO] [stdout] 507 |             combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 507 |             let _ = combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |             combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let _ = combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 509 |             let _ = combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0603]: function `compute_num_rounds` is private
[INFO] [stdout]    --> benches/bench_amh_opt.rs:23:64
[INFO] [stdout]     |
[INFO] [stdout]  23 | use ajtai::protocol::snark::groth16::circuit_opt::{AmhCircuit, compute_num_rounds};
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^ private function
[INFO] [stdout]     |
[INFO] [stdout] note: the function `compute_num_rounds` is defined here
[INFO] [stdout]    --> src/protocol/snark/groth16/circuit_opt.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | pub(crate) fn compute_num_rounds<S: Size>(num_leaves: usize) -> usize {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ajtai::protocol::proof::Proof`
[INFO] [stdout]   --> benches/bench_amh_opt.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | use ajtai::protocol::proof::Proof;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]  --> benches/bench_amh_opt.rs:2:39
[INFO] [stdout]   |
[INFO] [stdout] 2 | use criterion::{BatchSize, Criterion, black_box, criterion_group, criterion_main};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/bench_amh_opt.rs:71:21
[INFO] [stdout]    |
[INFO] [stdout] 71 |                     black_box(_pp);
[INFO] [stdout]    |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]   --> benches/bench_amh_opt.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |                     black_box(proof);
[INFO] [stdout]    |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `criterion::black_box`: use `std::hint::black_box()` instead
[INFO] [stdout]    --> benches/bench_amh_opt.rs:126:21
[INFO] [stdout]     |
[INFO] [stdout] 126 |                     black_box(ok);
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0603`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ajtai` (bench "bench_amh_opt") due to 1 previous error; 5 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:302:13
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut rng = StdRng::seed_from_u64(0u64);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:302:13
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut rng = StdRng::seed_from_u64(0u64);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::crh::AjtaiCRH`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 |     use crate::hash::ajtai::crh::AjtaiCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::crh::CRHScheme`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     use ark_crypto_primitives::crh::CRHScheme;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Field`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     use ark_ff::{Field, PrimeField};
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use ark_std::UniformRand;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 49 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nalgebra::SVector`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 |     use nalgebra::SVector;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AjtaiConfig`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:55:38
[INFO] [stdout]    |
[INFO] [stdout] 55 |     use crate::hash::ajtai::config::{AjtaiConfig, Size};
[INFO] [stdout]    |                                      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::crh::AjtaiCRH`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 56 |     use crate::hash::ajtai::crh::AjtaiCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::two_to_one::AjtaiTwoToOneCRH`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |     use crate::hash::ajtai::two_to_one::AjtaiTwoToOneCRH;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::SerializeDMatrix`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 58 |     use crate::utils::matrix::SerializeDMatrix;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CRHScheme` and `TwoToOneCRHScheme`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:60:38
[INFO] [stdout]    |
[INFO] [stdout] 60 |     use ark_crypto_primitives::crh::{CRHScheme, TwoToOneCRHScheme};
[INFO] [stdout]    |                                      ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::config::SetupConfig`
[INFO] [stdout]  --> src/protocol/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::SetupConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_relations::r1cs::ConstraintSynthesizer`
[INFO] [stdout]  --> src/protocol/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_relations::r1cs::ConstraintSynthesizer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalDeserialize` and `CanonicalSerialize`
[INFO] [stdout]  --> src/protocol/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_serialize::{CanonicalDeserialize, CanonicalSerialize};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_snark::SNARK`
[INFO] [stdout]  --> src/protocol/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_snark::SNARK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CryptoRng` and `RngCore`
[INFO] [stdout]  --> src/protocol/mod.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ark_std::rand::{CryptoRng, RngCore};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proof::Proof`
[INFO] [stdout]  --> src/protocol/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use proof::Proof;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `public_input::IntoVec`
[INFO] [stdout]   --> src/protocol/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use public_input::IntoVec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::hash::ajtai;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PcsConfig`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_parameters::PublicParameters`
[INFO] [stdout]   --> src/protocol/impls/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::public_parameters::PublicParameters;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::merkle_tree::AjtaiMerkleTreeConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::merkle_tree::AjtaiMerkleTreeConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/impls/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/config.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/config.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `subroutines::PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/protocol/impls/proof.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use subroutines::PolynomialCommitmentScheme;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `set_if_some`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | macro_rules! set_if_some {
[INFO] [stdout]   |              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/protocol/impls/setup.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::to_vector`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::utils::matrix::to_vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseMultilinearExtension` and `Polynomial`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_poly::{DenseMultilinearExtension, Polynomial};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DVector` and `stack`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, stack};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/opt/config_opt.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Neg`
[INFO] [stdout]   --> src/protocol/impls/opt/prover_opt.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::ops::{Add, Neg};
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/impls/opt/public_inputs_opt.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]  --> src/protocol/proof.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::pairing::Pairing;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config::QModProtocolParams`
[INFO] [stdout]  --> src/protocol/qmod/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use config::QModProtocolParams;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModBatchedRootProof`, `QModBooleanityProof`, `QModCommitmentLayout`, `QModLocalHashProof`, `QModProofSizeBreakdown`, `QModProof`, `QModRootProof`, `QModRowCommitments`, `QModSelectorWiringProof`, `QModTableCommitments`, and `QModWiringProof`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     QModBatchedRootProof, QModBooleanityProof, QModCommitmentLayout, QModLocalHashProof, QModProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 12 |     QModProofSizeBreakdown, QModRootProof, QModRowCommitments, QModSelectorWiringProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     QModTableCommitments, QModWiringProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prover::QModProtocol`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use prover::QModProtocol;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModBooleanityPublicInput`, `QModLocalHashPublicInput`, `QModPublicInput`, `QModRootPublicInput`, `QModSelectorWiringPublicInput`, and `QModWiringPublicInput`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     QModBooleanityPublicInput, QModLocalHashPublicInput, QModPublicInput, QModRootPublicInput,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     QModSelectorWiringPublicInput, QModWiringPublicInput,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModLocalHashCoeffPolys`, `QModTableAwareBooleanityDomain`, `QModTableAwareLocalHashDomains`, `QModTableAwarePolys`, `QModTableAwareRootDomain`, `QModTableAwareShape`, `QModTableAwareWiringDomain`, `QModTablePolys`, `QModTableShape`, `table_aware_booleanity_virtual_polynomial`, `table_aware_booleanity_weighted_sum`, `table_aware_local_hash_virtual_polynomials`, `table_aware_root_virtual_polynomial`, and `table_aware_wiring_virtual_polynomial`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     QModLocalHashCoeffPolys, QModTableAwareBooleanityDomain, QModTableAwareLocalHashDomains,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     QModTableAwarePolys, QModTableAwareRootDomain, QModTableAwareShape, QModTableAwareWiringDomain,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     QModTablePolys, QModTableShape, table_aware_booleanity_virtual_polynomial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     table_aware_booleanity_weighted_sum, table_aware_local_hash_virtual_polynomials,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     table_aware_root_virtual_polynomial, table_aware_wiring_virtual_polynomial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `new_column_vector` and `random_dmatrix`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:204:32
[INFO] [stdout]     |
[INFO] [stdout] 204 |     use crate::utils::matrix::{new_column_vector, random_dmatrix};
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AdditiveGroup` and `Field`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:206:18
[INFO] [stdout]     |
[INFO] [stdout] 206 |     use ark_ff::{AdditiveGroup, Field, PrimeField};
[INFO] [stdout]     |                  ^^^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::R1CSVar`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:207:9
[INFO] [stdout]     |
[INFO] [stdout] 207 |     use ark_r1cs_std::R1CSVar;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::convert::ToConstraintFieldGadget`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 |     use ark_r1cs_std::convert::ToConstraintFieldGadget;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ConstraintSystem`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:210:54
[INFO] [stdout]     |
[INFO] [stdout] 210 |     use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystem, ConstraintSystemRef};
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::SeedableRng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |     use ark_std::rand::SeedableRng;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::rand::prelude::StdRng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |     use ark_std::rand::prelude::StdRng;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dmatrix`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:213:38
[INFO] [stdout]     |
[INFO] [stdout] 213 |     use nalgebra::{DMatrix, DVector, dmatrix};
[INFO] [stdout]     |                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RoundChallengeVar` and `RoundPolyVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:2:45
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::iop::sumcheck::gadgets::rounds::{RoundChallengeVar, RoundPolyVar};
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::snark::gadgets::matrix::Dim2VecVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::protocol::snark::gadgets::matrix::Dim2VecVar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ff::PrimeField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::prelude::EqGadget`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_r1cs_std::prelude::EqGadget;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::AllocVar` and `fields::fp::FpVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_r1cs_std::{alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSynthesizer`, `ConstraintSystemRef`, and `SynthesisError`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, SynthesisError};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `R1CSVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_r1cs_std::{R1CSVar, alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::QModError`
[INFO] [stdout]  --> src/qmod/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use error::QModError;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompressionOutput` and `compress_parent_bits`
[INFO] [stdout]  --> src/qmod/mod.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use hash::{CompressionOutput, compress_parent_bits};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModPackedLeafDigestBits`, `QModPackedLeafLayout`, and `pack_raw_leaf_bits`
[INFO] [stdout]   --> src/qmod/mod.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     ChildRef, ParentMeta, QModMerkleTrace, QModPackedLeafDigestBits, QModPackedLeafLayout,
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     pack_raw_leaf_bits,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_serialize::Write`
[INFO] [stdout]   --> src/test_run.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use ark_serialize::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]   --> src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | mod test_run;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `env_logger::Builder`
[INFO] [stdout]   --> src/test_run.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use env_logger::Builder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]   --> src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | mod test_run;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/test_run.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]   --> src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | mod test_run;
[INFO] [stdout]    | ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VirtualPolynomial`
[INFO] [stdout]  --> src/utils/polynomial.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arithmetic::{VirtualPolynomial, fix_last_variables};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]   --> src/utils/polynomial.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ec::pairing::Pairing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_iter_mut`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DimMul`
[INFO] [stdout]   --> src/utils/polynomial.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, DVector, DimMul};
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Commitment`, `MultilinearKzgPCS`, `MultilinearProverParam`, and `PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/utils/polynomial.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Commitment, MultilinearKzgPCS, MultilinearProverParam, PCSError, PolynomialCommitmentScheme,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils/polynomial.rs:90:49
[INFO] [stdout]    |
[INFO] [stdout] 90 |         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout]    |                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout] 90 +         evaluations[row + column * h.nrows()] = h[(*row, *column)] ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:47:9
[INFO] [stdout]    |
[INFO] [stdout] 47 |     use ark_std::UniformRand;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/mod.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::config::SetupConfig`
[INFO] [stdout]  --> src/protocol/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::SetupConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/mod.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/mod.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_relations::r1cs::ConstraintSynthesizer`
[INFO] [stdout]  --> src/protocol/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_relations::r1cs::ConstraintSynthesizer;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CanonicalDeserialize` and `CanonicalSerialize`
[INFO] [stdout]  --> src/protocol/mod.rs:6:21
[INFO] [stdout]   |
[INFO] [stdout] 6 | use ark_serialize::{CanonicalDeserialize, CanonicalSerialize};
[INFO] [stdout]   |                     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_snark::SNARK`
[INFO] [stdout]  --> src/protocol/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use ark_snark::SNARK;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CryptoRng` and `RngCore`
[INFO] [stdout]  --> src/protocol/mod.rs:8:21
[INFO] [stdout]   |
[INFO] [stdout] 8 | use ark_std::rand::{CryptoRng, RngCore};
[INFO] [stdout]   |                     ^^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `proof::Proof`
[INFO] [stdout]  --> src/protocol/mod.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use proof::Proof;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `public_input::IntoVec`
[INFO] [stdout]   --> src/protocol/mod.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use public_input::IntoVec;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::hash::ajtai;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PcsConfig`
[INFO] [stdout]  --> src/protocol/impls/mod.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_parameters::PublicParameters`
[INFO] [stdout]   --> src/protocol/impls/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::protocol::public_parameters::PublicParameters;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::merkle_tree::AjtaiMerkleTreeConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::merkle_tree::AjtaiMerkleTreeConfig;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/impls/config.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/config.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/config.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `subroutines::PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/protocol/impls/proof.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use subroutines::PolynomialCommitmentScheme;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_ff::PrimeField;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `set_if_some`
[INFO] [stdout]  --> src/protocol/impls/public_inputs.rs:6:14
[INFO] [stdout]   |
[INFO] [stdout] 6 | macro_rules! set_if_some {
[INFO] [stdout]   |              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/protocol/impls/setup.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::to_vector`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::utils::matrix::to_vector;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DenseMultilinearExtension` and `Polynomial`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ark_poly::{DenseMultilinearExtension, Polynomial};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DVector` and `stack`
[INFO] [stdout]  --> src/protocol/impls/utils.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, stack};
[INFO] [stdout]   |                         ^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::max`
[INFO] [stdout]  --> src/protocol/impls/opt/config_opt.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::cmp::max;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Neg`
[INFO] [stdout]   --> src/protocol/impls/opt/prover_opt.rs:36:21
[INFO] [stdout]    |
[INFO] [stdout] 36 | use std::ops::{Add, Neg};
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/impls/opt/public_inputs_opt.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]  --> src/protocol/proof.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ark_ec::pairing::Pairing;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config::QModProtocolParams`
[INFO] [stdout]  --> src/protocol/qmod/mod.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use config::QModProtocolParams;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModBatchedRootProof`, `QModBooleanityProof`, `QModCommitmentLayout`, `QModLocalHashProof`, `QModProofSizeBreakdown`, `QModProof`, `QModRootProof`, `QModRowCommitments`, `QModSelectorWiringProof`, `QModTableCommitments`, and `QModWiringProof`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     QModBatchedRootProof, QModBooleanityProof, QModCommitmentLayout, QModLocalHashProof, QModProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 12 |     QModProofSizeBreakdown, QModRootProof, QModRowCommitments, QModSelectorWiringProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     QModTableCommitments, QModWiringProof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `prover::QModProtocol`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub use prover::QModProtocol;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModBooleanityPublicInput`, `QModLocalHashPublicInput`, `QModPublicInput`, `QModRootPublicInput`, `QModSelectorWiringPublicInput`, and `QModWiringPublicInput`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     QModBooleanityPublicInput, QModLocalHashPublicInput, QModPublicInput, QModRootPublicInput,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 18 |     QModSelectorWiringPublicInput, QModWiringPublicInput,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModLocalHashCoeffPolys`, `QModTableAwareBooleanityDomain`, `QModTableAwareLocalHashDomains`, `QModTableAwarePolys`, `QModTableAwareRootDomain`, `QModTableAwareShape`, `QModTableAwareWiringDomain`, `QModTablePolys`, `QModTableShape`, `table_aware_booleanity_virtual_polynomial`, `table_aware_booleanity_weighted_sum`, `table_aware_local_hash_virtual_polynomials`, `table_aware_root_virtual_polynomial`, and `table_aware_wiring_virtual_polynomial`
[INFO] [stdout]   --> src/protocol/qmod/mod.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     QModLocalHashCoeffPolys, QModTableAwareBooleanityDomain, QModTableAwareLocalHashDomains,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 22 |     QModTableAwarePolys, QModTableAwareRootDomain, QModTableAwareShape, QModTableAwareWiringDomain,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 23 |     QModTablePolys, QModTableShape, table_aware_booleanity_virtual_polynomial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 24 |     table_aware_booleanity_weighted_sum, table_aware_local_hash_virtual_polynomials,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 25 |     table_aware_root_virtual_polynomial, table_aware_wiring_virtual_polynomial,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::ajtai::config::Size`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::ajtai::config::Size;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RoundChallengeVar` and `RoundPolyVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:2:45
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::iop::sumcheck::gadgets::rounds::{RoundChallengeVar, RoundPolyVar};
[INFO] [stdout]   |                                             ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::public_input::IntoVec`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::protocol::public_input::IntoVec;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::protocol::snark::gadgets::matrix::Dim2VecVar`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::protocol::snark::gadgets::matrix::Dim2VecVar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::math::bit_width`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::utils::math::bit_width;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::utils::matrix::RowMatrix`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::utils::matrix::RowMatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_crypto_primitives::sponge::Absorb`
[INFO] [stdout]  --> src/protocol/snark/groth16/circuit.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use ark_crypto_primitives::sponge::Absorb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ff::PrimeField`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ff::PrimeField;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_r1cs_std::poly::polynomial::univariate::dense::DensePolynomialVar;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_r1cs_std::prelude::EqGadget`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use ark_r1cs_std::prelude::EqGadget;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `alloc::AllocVar` and `fields::fp::FpVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 | use ark_r1cs_std::{alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ConstraintSynthesizer`, `ConstraintSystemRef`, and `SynthesisError`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:14:27
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_relations::r1cs::{ConstraintSynthesizer, ConstraintSystemRef, SynthesisError};
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix` and `DVector`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:15:16
[INFO] [stdout]    |
[INFO] [stdout] 15 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]    |                ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `R1CSVar`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:14:20
[INFO] [stdout]    |
[INFO] [stdout] 14 | use ark_r1cs_std::{R1CSVar, alloc::AllocVar, fields::fp::FpVar};
[INFO] [stdout]    |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `error::QModError`
[INFO] [stdout]  --> src/qmod/mod.rs:8:9
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub use error::QModError;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CompressionOutput` and `compress_parent_bits`
[INFO] [stdout]  --> src/qmod/mod.rs:9:16
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub use hash::{CompressionOutput, compress_parent_bits};
[INFO] [stdout]   |                ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `QModPackedLeafDigestBits`, `QModPackedLeafLayout`, and `pack_raw_leaf_bits`
[INFO] [stdout]   --> src/qmod/mod.rs:12:44
[INFO] [stdout]    |
[INFO] [stdout] 12 |     ChildRef, ParentMeta, QModMerkleTrace, QModPackedLeafDigestBits, QModPackedLeafLayout,
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 13 |     pack_raw_leaf_bits,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_serialize::Write`
[INFO] [stdout]   --> src/test_run.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | use ark_serialize::Write;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `env_logger::Builder`
[INFO] [stdout]   --> src/test_run.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use env_logger::Builder;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/test_run.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::UniformRand`
[INFO] [stdout]    --> src/utils/matrix.rs:194:9
[INFO] [stdout]     |
[INFO] [stdout] 194 |     use ark_std::UniformRand;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VirtualPolynomial`
[INFO] [stdout]  --> src/utils/polynomial.rs:9:18
[INFO] [stdout]   |
[INFO] [stdout] 9 | use arithmetic::{VirtualPolynomial, fix_last_variables};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_ec::pairing::Pairing`
[INFO] [stdout]   --> src/utils/polynomial.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use ark_ec::pairing::Pairing;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `cfg_iter_mut`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:46
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DimMul`
[INFO] [stdout]   --> src/utils/polynomial.rs:12:34
[INFO] [stdout]    |
[INFO] [stdout] 12 | use nalgebra::{DMatrix, DVector, DimMul};
[INFO] [stdout]    |                                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Commitment`, `MultilinearKzgPCS`, `MultilinearProverParam`, and `PolynomialCommitmentScheme`
[INFO] [stdout]   --> src/utils/polynomial.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 21 |     Commitment, MultilinearKzgPCS, MultilinearProverParam, PCSError, PolynomialCommitmentScheme,
[INFO] [stdout]    |     ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/utils/polynomial.rs:90:49
[INFO] [stdout]    |
[INFO] [stdout] 90 |         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout]    |                                                 ^                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 90 -         evaluations[row + column * h.nrows()] = (h[(*row, *column)]);
[INFO] [stdout] 90 +         evaluations[row + column * h.nrows()] = h[(*row, *column)] ;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_poly::DenseUVPolynomial`
[INFO] [stdout]    --> src/utils/polynomial.rs:612:9
[INFO] [stdout]     |
[INFO] [stdout] 612 |     use ark_poly::DenseUVPolynomial;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_poly::univariate::DensePolynomial`
[INFO] [stdout]    --> src/utils/polynomial.rs:613:9
[INFO] [stdout]     |
[INFO] [stdout] 613 |     use ark_poly::univariate::DensePolynomial;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `polynomial` is never read
[INFO] [stdout]    --> src/utils/polynomial.rs:377:48
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut polynomial: Vec<Monomial<F>> = Vec::new();
[INFO] [stdout]     |                                                ^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] 378 |         polynomial = [p1, p2].concat();
[INFO] [stdout]     |         ---------- `polynomial` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `IntoVec` is more private than the item `AmhScheme::PublicInputs`
[INFO] [stdout]   --> src/protocol/scheme.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     type PublicInputs: Clone + IntoVec<Item = F>;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated type `AmhScheme::PublicInputs` is reachable at visibility `pub`
[INFO] [stdout]    |
[INFO] [stdout] note: but trait `IntoVec` is only usable at visibility `pub(crate)`
[INFO] [stdout]   --> src/protocol/public_input.rs:1:1
[INFO] [stdout]    |
[INFO] [stdout]  1 | pub(crate) trait IntoVec {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_bounds)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn transpose<T: Clone>(matrix: Vec<Vec<T>>) -> Vec<Vec<T>> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_local_hash_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:517:4
[INFO] [stdout]     |
[INFO] [stdout] 517 | fn prove_local_hash_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_booleanity_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:560:4
[INFO] [stdout]     |
[INFO] [stdout] 560 | fn prove_booleanity_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:785:15
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub(crate) fn o1_global_table_opening_points<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:832:4
[INFO] [stdout]     |
[INFO] [stdout] 832 | fn o1_global_opening_evals<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:862:4
[INFO] [stdout]     |
[INFO] [stdout] 862 | fn table_points_for_rows<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:871:4
[INFO] [stdout]     |
[INFO] [stdout] 871 | fn table_points_for_rows_with_column_points<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:881:15
[INFO] [stdout]     |
[INFO] [stdout] 881 | pub(crate) fn table_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_subproof_inputs` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:954:15
[INFO] [stdout]     |
[INFO] [stdout] 954 | pub(crate) fn derive_subproof_inputs<E: Pairing>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_table_subproof_inputs` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1007:15
[INFO] [stdout]      |
[INFO] [stdout] 1007 | pub(crate) fn derive_table_subproof_inputs<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_global_opening_context` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1218:15
[INFO] [stdout]      |
[INFO] [stdout] 1218 | pub(crate) fn append_global_opening_context<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_diff_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:850:4
[INFO] [stdout]     |
[INFO] [stdout] 850 | fn table_aware_wiring_diff_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_parent_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:996:4
[INFO] [stdout]     |
[INFO] [stdout] 996 | fn table_aware_shifted_parent_point<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invalid_proof_as_false` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn invalid_proof_as_false(result: Result<bool, ProtocolError>) -> Result<bool, ProtocolError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:806:4
[INFO] [stdout]     |
[INFO] [stdout] 806 | fn global_opening_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:821:4
[INFO] [stdout]     |
[INFO] [stdout] 821 | fn global_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:852:4
[INFO] [stdout]     |
[INFO] [stdout] 852 | fn global_table_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:902:4
[INFO] [stdout]     |
[INFO] [stdout] 902 | fn table_points_for_rows<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:911:4
[INFO] [stdout]     |
[INFO] [stdout] 911 | fn table_points_for_rows_with_column_points<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModGlobalOpeningEvals` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:921:8
[INFO] [stdout]     |
[INFO] [stdout] 921 | struct QModGlobalOpeningEvals<'a, F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_table_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:934:4
[INFO] [stdout]     |
[INFO] [stdout] 934 | fn split_global_table_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:997:4
[INFO] [stdout]     |
[INFO] [stdout] 997 | fn split_global_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1035:4
[INFO] [stdout]      |
[INFO] [stdout] 1035 | fn booleanity_eval_from_evals<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_decomposition_le` is never used
[INFO] [stdout]   --> src/utils/field_ops.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) fn bit_decomposition_le<F: PrimeField>(x: u64, bit_length: usize) -> Vec<F> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_num_variables` is never used
[INFO] [stdout]   --> src/utils/matrix.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn compute_num_variables(row: usize, column: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_indices_column_major` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) fn matrix_indices_column_major(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hadamard_product` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub(crate) fn hadamard_product<T: Copy + ark_std::ops::Mul<Output = T>>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `omatrix_to_dmatrix` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub(crate) fn omatrix_to_dmatrix<F: PrimeField, R: Dim, C: Dim>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_poly_by_positions` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:81:15
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub(crate) fn compute_poly_by_positions<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_last_at_point` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn fix_last_at_point<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerate_evaluations` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:104:15
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub(crate) fn enumerate_evaluations<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl<F: PrimeField> Monomial<F> {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn default() -> Monomial<F> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mle_evals_to_coeffs` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn mle_evals_to_coeffs<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_vector` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:428:8
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn scale_vector<F>(vector: Vec<F>, k: F) -> Vec<F>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dense_coeffs_to_sparse_poly` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:439:8
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub fn dense_coeffs_to_sparse_poly<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_scale_sparse_polynomial` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 | pub fn manual_scale_sparse_polynomial<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_terms` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:521:4
[INFO] [stdout]     |
[INFO] [stdout] 521 | fn multiply_terms<T>(term1: &T, term2: &T) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_multiply_sparse_polynomials` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:548:8
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub fn manual_multiply_sparse_polynomials<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_constant` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:582:8
[INFO] [stdout]     |
[INFO] [stdout] 582 | pub fn subtract_constant<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |                  ^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 12 - pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout] 12 + pub type A256<E> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<<E as /* Trait */>::ScalarField, 256>;
[INFO] [stdout]    |                                             +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:396:21
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     let _ = acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:507:13
[INFO] [stdout]     |
[INFO] [stdout] 507 |             combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 507 |             let _ = combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |             combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let _ = combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 509 |             let _ = combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `LogQ` should have an upper case name
[INFO] [stdout]    --> src/utils/matrix.rs:200:50
[INFO] [stdout]     |
[INFO] [stdout] 200 |     struct AjtaiMatrixSize<const R: usize, const LogQ: usize> {}
[INFO] [stdout]     |                                                  ^^^^ help: convert the identifier to upper case: `LOG_Q`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `LogQ` should have an upper case name
[INFO] [stdout]    --> src/utils/matrix.rs:201:32
[INFO] [stdout]     |
[INFO] [stdout] 201 |     impl<const R: usize, const LogQ: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout]     |                                ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 201 -     impl<const R: usize, const LogQ: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout] 201 +     impl<const R: usize, const LOG_Q: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use ark_std::iterable::Iterable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/setup.rs:3:42
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/utils/matrix.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn setup<R: Rng>(r: &mut R) -> Result<Self::Parameters, Error> {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 .fold(F::zero(), |acc, (b, c)| acc + b)
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .filter(|(a, b)| **b)
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rounds`
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let num_rounds = r_challenge.len();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding_rows`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let padding_rows = max(tilde_m_row_size, h_row_size) - min(tilde_m_row_size, h_row_size);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:389:13
[INFO] [stdout]     |
[INFO] [stdout] 389 |         let mut f = VirtualPolynomial::new(num_variables);
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Zero`
[INFO] [stdout]   --> src/utils/polynomial.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use ark_std::{Zero, cfg_into_iter, cfg_iter, cfg_iter_mut};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/config.rs:2:42
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SetupConfig`
[INFO] [stdout]  --> src/protocol/impls/setup.rs:3:42
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::protocol::config::{PcsConfig, SetupConfig};
[INFO] [stdout]   |                                          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 19 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]   --> src/utils/matrix.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use rayon::prelude::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ark_std::iterable::Iterable`
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit_opt.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use ark_std::iterable::Iterable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_size`
[INFO] [stdout]   --> src/protocol/impls/opt/test_randoms_opt.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let x_size = bit_width(m_row_size);
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 |         for (i, row) in parameter.matrix.0.row_iter().enumerate() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:22:22
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn setup<R: Rng>(r: &mut R) -> Result<Self::Parameters, Error> {
[INFO] [stdout]    |                      ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parameter`
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:83:13
[INFO] [stdout]    |
[INFO] [stdout] 83 |         let parameter = AjtaiCRH::<F, Size2x22logq>::setup(&mut rng).unwrap();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parameter`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 .fold(F::zero(), |acc, (b, c)| acc + b)
[INFO] [stdout]    |                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `a`
[INFO] [stdout]   --> src/hash/ajtai/utils.rs:45:27
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .filter(|(a, b)| **b)
[INFO] [stdout]    |                           ^ help: if this is intentional, prefix it with an underscore: `_a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_rounds`
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 27 |     let num_rounds = r_challenge.len();
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_rounds`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:282:9
[INFO] [stdout]     |
[INFO] [stdout] 282 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `padding_rows`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:317:13
[INFO] [stdout]     |
[INFO] [stdout] 317 |         let padding_rows = max(tilde_m_row_size, h_row_size) - min(tilde_m_row_size, h_row_size);
[INFO] [stdout]     |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_padding_rows`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_variables`
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:328:9
[INFO] [stdout]     |
[INFO] [stdout] 328 |         num_variables: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_num_variables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:389:13
[INFO] [stdout]     |
[INFO] [stdout] 389 |         let mut f = VirtualPolynomial::new(num_variables);
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_size`
[INFO] [stdout]   --> src/protocol/impls/opt/test_randoms_opt.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let x_size = bit_width(m_row_size);
[INFO] [stdout]    |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `polynomial` is never read
[INFO] [stdout]    --> src/utils/polynomial.rs:377:48
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut polynomial: Vec<Monomial<F>> = Vec::new();
[INFO] [stdout]     |                                                ^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] 378 |         polynomial = [p1, p2].concat();
[INFO] [stdout]     |         ---------- `polynomial` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:52:10
[INFO] [stdout]    |
[INFO] [stdout] 52 |     type F = Fr;
[INFO] [stdout]    |          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Size2x22logq` is never constructed
[INFO] [stdout]   --> src/hash/ajtai/crh.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 |     struct Size2x22logq;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout] 66 |     type F = Fr;
[INFO] [stdout]    |          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Size2x22logq` is never constructed
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 |     struct Size2x22logq;
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_matrix` is never used
[INFO] [stdout]   --> src/hash/ajtai/two_to_one.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn test_matrix() -> DMatrix<F> {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn transpose<T: Clone>(matrix: Vec<Vec<T>>) -> Vec<Vec<T>> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PreprocessingFailed` is never constructed
[INFO] [stdout]  --> src/protocol/errors.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum ProtocolError {
[INFO] [stdout]   |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 8 |     PreprocessingFailed(String),
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ProtocolError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `A256` is never used
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `trim` is never used
[INFO] [stdout]  --> src/protocol/public_parameters.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait PublicParameters<F: PrimeField + Absorb> {
[INFO] [stdout]   |           ---------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 9 |     fn trim(
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModProtocolParams` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/config.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct QModProtocolParams<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `setup_for_testing`, `setup_for_table_testing`, and `setup_with_pcs_variables` are never used
[INFO] [stdout]   --> src/protocol/qmod/config.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl<E: Pairing> QModProtocolParams<E> {
[INFO] [stdout]    | -------------------------------------- associated functions in this implementation
[INFO] [stdout] 21 |     pub fn setup_for_testing<R: RngCore + CryptoRng>(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn setup_for_table_testing<F: PrimeField, R: RngCore + CryptoRng>(
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     fn setup_with_pcs_variables<R: RngCore + CryptoRng>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModRowCommitments` is never constructed
[INFO] [stdout]  --> src/protocol/qmod/proof.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct QModRowCommitments<E: Pairing> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModCommitmentLayout` is never used
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum QModCommitmentLayout {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableCommitments` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct QModTableCommitments<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModLocalHashProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct QModLocalHashProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModBooleanityProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct QModBooleanityProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModWiringProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct QModWiringProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModSelectorWiringProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:52:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub struct QModSelectorWiringProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModRootProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub struct QModRootProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModBatchedRootProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct QModBatchedRootProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModProof` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct QModProof<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModProofSizeBreakdown` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct QModProofSizeBreakdown {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_proof` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl QModProofSizeBreakdown {
[INFO] [stdout]     | --------------------------- associated function in this implementation
[INFO] [stdout] 104 |     pub fn from_proof<E: Pairing>(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `qmod_global_opening_eval_count` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn qmod_global_opening_eval_count<F: ark_ff::PrimeField>(params: &QModAjtaiParams<F>) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialized_size` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn serialized_size<T: CanonicalSerialize>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModProtocol` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/prover.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub struct QModProtocol<E: Pairing> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:40:12
[INFO] [stdout]     |
[INFO] [stdout]  39 | impl<E: Pairing> QModProtocol<E> {
[INFO] [stdout]     | -------------------------------- associated functions in this implementation
[INFO] [stdout]  40 |     pub fn setup_for_testing<R: ark_std::rand::RngCore + ark_std::rand::CryptoRng>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     pub fn setup_for_table_testing<R: ark_std::rand::RngCore + ark_std::rand::CryptoRng>(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub fn public_input_from_trace(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn prove(
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn prove_local_hash(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 341 |     pub fn prove_booleanity(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 400 |     pub fn prove_wiring(
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 430 |     pub fn prove_selector_wiring(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 460 |     pub fn prove_root(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 488 |     pub fn prove_batched_root(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_local_hash_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:517:4
[INFO] [stdout]     |
[INFO] [stdout] 517 | fn prove_local_hash_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_booleanity_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:560:4
[INFO] [stdout]     |
[INFO] [stdout] 560 | fn prove_booleanity_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_wiring_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:610:4
[INFO] [stdout]     |
[INFO] [stdout] 610 | fn prove_wiring_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_selector_wiring_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:639:4
[INFO] [stdout]     |
[INFO] [stdout] 639 | fn prove_selector_wiring_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_root_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:700:4
[INFO] [stdout]     |
[INFO] [stdout] 700 | fn prove_root_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_batched_root_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:731:4
[INFO] [stdout]     |
[INFO] [stdout] 731 | fn prove_batched_root_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableOpeningPoints` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:762:19
[INFO] [stdout]     |
[INFO] [stdout] 762 | pub(crate) struct QModTableOpeningPoints<F> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableOpeningEvals` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:768:19
[INFO] [stdout]     |
[INFO] [stdout] 768 | pub(crate) struct QModTableOpeningEvals<F> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareChallenges` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:775:19
[INFO] [stdout]     |
[INFO] [stdout] 775 | pub(crate) struct QModTableAwareChallenges<F> {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:785:15
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub(crate) fn o1_global_table_opening_points<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:832:4
[INFO] [stdout]     |
[INFO] [stdout] 832 | fn o1_global_opening_evals<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:862:4
[INFO] [stdout]     |
[INFO] [stdout] 862 | fn table_points_for_rows<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:871:4
[INFO] [stdout]     |
[INFO] [stdout] 871 | fn table_points_for_rows_with_column_points<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:881:15
[INFO] [stdout]     |
[INFO] [stdout] 881 | pub(crate) fn table_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_point_from_row_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:895:15
[INFO] [stdout]     |
[INFO] [stdout] 895 | pub(crate) fn table_point_from_row_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `m_side_table_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:905:15
[INFO] [stdout]     |
[INFO] [stdout] 905 | pub(crate) fn m_side_table_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_side_row_column_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:917:15
[INFO] [stdout]     |
[INFO] [stdout] 917 | pub(crate) fn split_side_row_column_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_row_column_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:936:15
[INFO] [stdout]     |
[INFO] [stdout] 936 | pub(crate) fn split_row_column_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_subproof_inputs` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:954:15
[INFO] [stdout]     |
[INFO] [stdout] 954 | pub(crate) fn derive_subproof_inputs<E: Pairing>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_table_subproof_inputs` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1007:15
[INFO] [stdout]      |
[INFO] [stdout] 1007 | pub(crate) fn derive_table_subproof_inputs<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_table_aware_challenges` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1060:15
[INFO] [stdout]      |
[INFO] [stdout] 1060 | pub(crate) fn derive_table_aware_challenges<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_qmod_params` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1134:4
[INFO] [stdout]      |
[INFO] [stdout] 1134 | fn append_qmod_params<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_public_input` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1162:4
[INFO] [stdout]      |
[INFO] [stdout] 1162 | fn append_public_input<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_row_commitments` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1177:15
[INFO] [stdout]      |
[INFO] [stdout] 1177 | pub(crate) fn append_row_commitments<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_table_commitments` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1202:15
[INFO] [stdout]      |
[INFO] [stdout] 1202 | pub(crate) fn append_table_commitments<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_global_opening_context` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1218:15
[INFO] [stdout]      |
[INFO] [stdout] 1218 | pub(crate) fn append_global_opening_context<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_table_aware_opening_context` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1237:15
[INFO] [stdout]      |
[INFO] [stdout] 1237 | pub(crate) fn append_table_aware_opening_context<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_selector_wiring_commitments` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1248:15
[INFO] [stdout]      |
[INFO] [stdout] 1248 | pub(crate) fn append_selector_wiring_commitments<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_requested_commitments` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1280:15
[INFO] [stdout]      |
[INFO] [stdout] 1280 | pub(crate) fn append_requested_commitments<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_child_ref` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1309:4
[INFO] [stdout]      |
[INFO] [stdout] 1309 | fn append_child_ref<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_bits` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1326:4
[INFO] [stdout]      |
[INFO] [stdout] 1326 | fn append_bits<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_usize` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1344:4
[INFO] [stdout]      |
[INFO] [stdout] 1344 | fn append_usize<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_u64` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1354:4
[INFO] [stdout]      |
[INFO] [stdout] 1354 | fn append_u64<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_u8` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1364:4
[INFO] [stdout]      |
[INFO] [stdout] 1364 | fn append_u8<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `row_polys` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1374:15
[INFO] [stdout]      |
[INFO] [stdout] 1374 | pub(crate) fn row_polys<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `commit_all` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1403:4
[INFO] [stdout]      |
[INFO] [stdout] 1403 | fn commit_all<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_all` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1416:4
[INFO] [stdout]      |
[INFO] [stdout] 1416 | fn evaluate_all<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_sumcheck` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1423:4
[INFO] [stdout]      |
[INFO] [stdout] 1423 | fn prove_sumcheck<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `evaluate_matrix_rows` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1432:4
[INFO] [stdout]      |
[INFO] [stdout] 1432 | fn evaluate_matrix_rows<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multilinear_eq_weights` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1474:4
[INFO] [stdout]      |
[INFO] [stdout] 1474 | fn multilinear_eq_weights<F: PrimeField>(point: &[F]) -> Vec<F> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_virtual_polynomial` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1489:4
[INFO] [stdout]      |
[INFO] [stdout] 1489 | fn booleanity_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_shifted_selector_wiring_sumcheck` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1524:4
[INFO] [stdout]      |
[INFO] [stdout] 1524 | fn prove_shifted_selector_wiring_sumcheck<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_selector_wiring_virtual_polynomial` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1547:4
[INFO] [stdout]      |
[INFO] [stdout] 1547 | fn shifted_selector_wiring_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModWiringSide` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1598:17
[INFO] [stdout]      |
[INFO] [stdout] 1598 | pub(crate) enum QModWiringSide {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_wiring_selector_mles` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1603:4
[INFO] [stdout]      |
[INFO] [stdout] 1603 | fn shifted_wiring_selector_mles<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_wiring_diff_polys` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1637:4
[INFO] [stdout]      |
[INFO] [stdout] 1637 | fn shifted_wiring_diff_polys<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_wiring_child_columns` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1688:4
[INFO] [stdout]      |
[INFO] [stdout] 1688 | fn shifted_wiring_child_columns(metadata: &[ParentMeta]) -> std::ops::Range<usize> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift_wiring_metadata_holds` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1692:15
[INFO] [stdout]      |
[INFO] [stdout] 1692 | pub(crate) fn shift_wiring_metadata_holds(metadata: &[ParentMeta], num_variables: usize) -> bool {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_parent_column` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1729:4
[INFO] [stdout]      |
[INFO] [stdout] 1729 | fn shifted_parent_column(parent_count: usize, child_column: usize) -> Result<usize, ProtocolError> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_parent_point` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1738:15
[INFO] [stdout]      |
[INFO] [stdout] 1738 | pub(crate) fn shifted_parent_point<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shifted_wiring_selector_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1753:15
[INFO] [stdout]      |
[INFO] [stdout] 1753 | pub(crate) fn shifted_wiring_selector_eval<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `selector_capacity` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1778:4
[INFO] [stdout]      |
[INFO] [stdout] 1778 | fn selector_capacity(num_variables: usize) -> Result<usize, ProtocolError> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `concatenate_opened_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1784:15
[INFO] [stdout]      |
[INFO] [stdout] 1784 | pub(crate) fn concatenate_opened_evals<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_eval_at_opening` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1792:15
[INFO] [stdout]      |
[INFO] [stdout] 1792 | pub(crate) fn booleanity_eval_at_opening<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModOpenedTable` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1814:17
[INFO] [stdout]      |
[INFO] [stdout] 1814 | pub(crate) enum QModOpenedTable {
[INFO] [stdout]      |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModCellOpening` is never constructed
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1820:19
[INFO] [stdout]      |
[INFO] [stdout] 1820 | pub(crate) struct QModCellOpening {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `wiring_cell_openings` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1826:15
[INFO] [stdout]      |
[INFO] [stdout] 1826 | pub(crate) fn wiring_cell_openings<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root_cell_openings` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1854:15
[INFO] [stdout]      |
[INFO] [stdout] 1854 | pub(crate) fn root_cell_openings<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `column_point` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1869:15
[INFO] [stdout]      |
[INFO] [stdout] 1869 | pub(crate) fn column_point<F: PrimeField>(column: usize, num_variables: usize) -> Vec<F> {
[INFO] [stdout]      |               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_child_wiring_openings` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1875:4
[INFO] [stdout]      |
[INFO] [stdout] 1875 | fn push_child_wiring_openings<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_column_capacity` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1901:4
[INFO] [stdout]      |
[INFO] [stdout] 1901 | fn check_column_capacity(column: usize, num_variables: usize) -> Result<(), ProtocolError> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `opened_cells` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1914:4
[INFO] [stdout]      |
[INFO] [stdout] 1914 | fn opened_cells<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModLocalHashPublicInput` is never constructed
[INFO] [stdout]  --> src/protocol/qmod/public_inputs.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct QModLocalHashPublicInput<F: PrimeField> {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModBooleanityPublicInput` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/public_inputs.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct QModBooleanityPublicInput<F: PrimeField> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModWiringPublicInput` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/public_inputs.rs:18:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct QModWiringPublicInput {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModSelectorWiringPublicInput` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/public_inputs.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct QModSelectorWiringPublicInput<F: PrimeField> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModRootPublicInput` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/public_inputs.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct QModRootPublicInput<F: PrimeField> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModPublicInput` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/public_inputs.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct QModPublicInput {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableShape` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/table.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct QModTableShape {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareShape` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/table.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct QModTableAwareShape {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/protocol/qmod/table.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl QModTableShape {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 37 |     pub fn new<F: PrimeField>(params: &QModAjtaiParams<F>, parent_columns: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn m_eval_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     pub fn b_eval_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub fn q_eval_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn total_eval_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn m_num_variables(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn b_num_variables(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn q_num_variables(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn max_num_variables(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:86:12
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl QModTableAwareShape {
[INFO] [stdout]     | ------------------------ associated items in this implementation
[INFO] [stdout]  86 |     pub fn new<F: PrimeField>(params: &QModAjtaiParams<F>, parent_columns: usize) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn m_eval_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 108 |     pub fn b_eval_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn q_eval_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn total_eval_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn m_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn b_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn q_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn m_coeff_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn b_coeff_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub fn q_coeff_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub fn max_num_variables(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTablePolys` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct QModTablePolys<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwarePolys` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:160:12
[INFO] [stdout]     |
[INFO] [stdout] 160 | pub struct QModTableAwarePolys<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModLocalHashCoeffPolys` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct QModLocalHashCoeffPolys<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareBooleanityDomain` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:176:12
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub struct QModTableAwareBooleanityDomain {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareRootDomain` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:186:12
[INFO] [stdout]     |
[INFO] [stdout] 186 | pub struct QModTableAwareRootDomain {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareWiringDomain` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 | pub struct QModTableAwareWiringDomain {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTableAwareLocalHashDomains` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:201:12
[INFO] [stdout]     |
[INFO] [stdout] 201 | pub struct QModTableAwareLocalHashDomains {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_trace` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:209:12
[INFO] [stdout]     |
[INFO] [stdout] 208 | impl<F: PrimeField> QModTablePolys<F> {
[INFO] [stdout]     | ------------------------------------- associated function in this implementation
[INFO] [stdout] 209 |     pub fn from_trace(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_trace` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:222:12
[INFO] [stdout]     |
[INFO] [stdout] 221 | impl<F: PrimeField> QModTableAwarePolys<F> {
[INFO] [stdout]     | ------------------------------------------ associated function in this implementation
[INFO] [stdout] 222 |     pub fn from_trace(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `for_coordinate_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:240:12
[INFO] [stdout]     |
[INFO] [stdout] 239 | impl<F: PrimeField> QModLocalHashCoeffPolys<F> {
[INFO] [stdout]     | ---------------------------------------------- associated function in this implementation
[INFO] [stdout] 240 |     pub fn for_coordinate_point(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_booleanity_weighted_sum` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:266:8
[INFO] [stdout]     |
[INFO] [stdout] 266 | pub fn table_aware_booleanity_weighted_sum<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_booleanity_virtual_polynomial` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:308:8
[INFO] [stdout]     |
[INFO] [stdout] 308 | pub fn table_aware_booleanity_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_root_virtual_polynomial` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:361:8
[INFO] [stdout]     |
[INFO] [stdout] 361 | pub fn table_aware_root_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_virtual_polynomial` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:404:8
[INFO] [stdout]     |
[INFO] [stdout] 404 | pub fn table_aware_wiring_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_local_hash_virtual_polynomials` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:470:8
[INFO] [stdout]     |
[INFO] [stdout] 470 | pub fn table_aware_local_hash_virtual_polynomials<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_batched_local_hash_virtual_polynomial` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:517:8
[INFO] [stdout]     |
[INFO] [stdout] 517 | pub fn table_aware_batched_local_hash_virtual_polynomial<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:591:12
[INFO] [stdout]     |
[INFO] [stdout] 590 | impl QModTableAwareBooleanityDomain {
[INFO] [stdout]     | ----------------------------------- associated function in this implementation
[INFO] [stdout] 591 |     pub fn new(shape: &QModTableAwareShape) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:608:12
[INFO] [stdout]     |
[INFO] [stdout] 607 | impl QModTableAwareRootDomain {
[INFO] [stdout]     | ----------------------------- associated function in this implementation
[INFO] [stdout] 608 |     pub fn new(shape: &QModTableAwareShape) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:617:12
[INFO] [stdout]     |
[INFO] [stdout] 616 | impl QModTableAwareWiringDomain {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] 617 |     pub fn new(shape: &QModTableAwareShape) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:631:12
[INFO] [stdout]     |
[INFO] [stdout] 630 | impl QModTableAwareLocalHashDomains {
[INFO] [stdout]     | ----------------------------------- associated function in this implementation
[INFO] [stdout] 631 |     pub fn new(shape: &QModTableAwareShape) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModBooleanityLiftMode` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:642:6
[INFO] [stdout]     |
[INFO] [stdout] 642 | enum QModBooleanityLiftMode {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lift_table_for_booleanity` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:647:4
[INFO] [stdout]     |
[INFO] [stdout] 647 | fn lift_table_for_booleanity<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `b_root_row_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:711:4
[INFO] [stdout]     |
[INFO] [stdout] 711 | fn b_root_row_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_row_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:730:4
[INFO] [stdout]     |
[INFO] [stdout] 730 | fn valid_row_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root_bits_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:744:4
[INFO] [stdout]     |
[INFO] [stdout] 744 | fn root_bits_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `lift_row_poly_to_row_column_domain` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:758:4
[INFO] [stdout]     |
[INFO] [stdout] 758 | fn lift_row_poly_to_row_column_domain<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_wiring_selector_mles` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:776:4
[INFO] [stdout]     |
[INFO] [stdout] 776 | fn table_aware_shifted_wiring_selector_mles<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_m_polys` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:812:4
[INFO] [stdout]     |
[INFO] [stdout] 812 | fn table_aware_shifted_m_polys<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_diff_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:850:4
[INFO] [stdout]     |
[INFO] [stdout] 850 | fn table_aware_wiring_diff_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_m_weight_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:884:4
[INFO] [stdout]     |
[INFO] [stdout] 884 | fn local_hash_m_weight_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_b_weight_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:906:4
[INFO] [stdout]     |
[INFO] [stdout] 906 | fn local_hash_b_weight_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_q_weight_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:924:4
[INFO] [stdout]     |
[INFO] [stdout] 924 | fn local_hash_q_weight_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_wiring_child_columns` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:942:4
[INFO] [stdout]     |
[INFO] [stdout] 942 | fn table_aware_shifted_wiring_child_columns(metadata: &[ParentMeta]) -> std::ops::Range<usize> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shift_wiring_metadata_holds` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:946:4
[INFO] [stdout]     |
[INFO] [stdout] 946 | fn table_aware_shift_wiring_metadata_holds(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_parent_column` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:984:4
[INFO] [stdout]     |
[INFO] [stdout] 984 | fn table_aware_shifted_parent_column(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_parent_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:996:4
[INFO] [stdout]     |
[INFO] [stdout] 996 | fn table_aware_shifted_parent_point<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `m_matrix_to_side_table_poly` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1011:4
[INFO] [stdout]      |
[INFO] [stdout] 1011 | fn m_matrix_to_side_table_poly<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_m_coeff_poly` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1047:4
[INFO] [stdout]      |
[INFO] [stdout] 1047 | fn local_hash_m_coeff_poly<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_b_coeff_poly` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1069:4
[INFO] [stdout]      |
[INFO] [stdout] 1069 | fn local_hash_b_coeff_poly<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_q_coeff_poly` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1086:4
[INFO] [stdout]      |
[INFO] [stdout] 1086 | fn local_hash_q_coeff_poly<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq_eval_at_index` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1105:4
[INFO] [stdout]      |
[INFO] [stdout] 1105 | fn eq_eval_at_index<F: PrimeField>(point: &[F], index: usize) -> F {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `m_side_table_index` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1118:4
[INFO] [stdout]      |
[INFO] [stdout] 1118 | fn m_side_table_index(side: usize, bit: usize, column: usize, output_row_domain: usize) -> usize {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_to_table_poly` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1122:4
[INFO] [stdout]      |
[INFO] [stdout] 1122 | fn matrix_to_table_poly<F: PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `log2_power_of_two` is never used
[INFO] [stdout]     --> src/protocol/qmod/table.rs:1160:4
[INFO] [stdout]      |
[INFO] [stdout] 1160 | fn log2_power_of_two(value: usize) -> usize {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `random_column_point` is never used
[INFO] [stdout]  --> src/protocol/qmod/test_randoms.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn random_column_point<F: PrimeField, R: RngCore + CryptoRng>(
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:34:12
[INFO] [stdout]     |
[INFO] [stdout]  33 | impl<E: Pairing> QModProtocol<E> {
[INFO] [stdout]     | -------------------------------- associated functions in this implementation
[INFO] [stdout]  34 |     pub fn verify(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     pub fn verify_local_hash(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn verify_booleanity(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn verify_wiring(
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 432 |     pub fn verify_selector_wiring(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |     pub fn verify_root(
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 574 |     pub fn verify_batched_root(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invalid_proof_as_false` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn invalid_proof_as_false(result: Result<bool, ProtocolError>) -> Result<bool, ProtocolError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `qmod_verify_log` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:629:4
[INFO] [stdout]     |
[INFO] [stdout] 629 | fn qmod_verify_log(label: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModVerifiedSumcheck` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:635:8
[INFO] [stdout]     |
[INFO] [stdout] 635 | struct QModVerifiedSumcheck<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_sumcheck_with_extracted_sum` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:641:4
[INFO] [stdout]     |
[INFO] [stdout] 641 | fn verify_sumcheck_with_extracted_sum<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `verify_zero_sumcheck` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:668:4
[INFO] [stdout]     |
[INFO] [stdout] 668 | fn verify_zero_sumcheck<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `public_input_shape_holds` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:684:4
[INFO] [stdout]     |
[INFO] [stdout] 684 | fn public_input_shape_holds<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `child_ref_fits` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:708:4
[INFO] [stdout]     |
[INFO] [stdout] 708 | fn child_ref_fits(child: &ChildRef, num_variables: usize) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `column_fits` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:715:4
[INFO] [stdout]     |
[INFO] [stdout] 715 | fn column_fits(column: usize, num_variables: usize) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `row_commitment_shape_holds` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:722:4
[INFO] [stdout]     |
[INFO] [stdout] 722 | fn row_commitment_shape_holds<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `flatten_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:731:4
[INFO] [stdout]     |
[INFO] [stdout] 731 | fn flatten_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `opened_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:742:4
[INFO] [stdout]     |
[INFO] [stdout] 742 | fn opened_evals<E: Pairing>(proof: &QModLocalHashProof<E>) -> Vec<E::ScalarField> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `commitments_for_requests` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:751:4
[INFO] [stdout]     |
[INFO] [stdout] 751 | fn commitments_for_requests<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `selector_wiring_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:768:4
[INFO] [stdout]     |
[INFO] [stdout] 768 | fn selector_wiring_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `selector_wiring_opened_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:785:4
[INFO] [stdout]     |
[INFO] [stdout] 785 | fn selector_wiring_opened_evals<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `points_for_requests` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:796:4
[INFO] [stdout]     |
[INFO] [stdout] 796 | fn points_for_requests<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:806:4
[INFO] [stdout]     |
[INFO] [stdout] 806 | fn global_opening_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:821:4
[INFO] [stdout]     |
[INFO] [stdout] 821 | fn global_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModGlobalTableOpeningPoints` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:846:8
[INFO] [stdout]     |
[INFO] [stdout] 846 | struct QModGlobalTableOpeningPoints<F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:852:4
[INFO] [stdout]     |
[INFO] [stdout] 852 | fn global_table_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:902:4
[INFO] [stdout]     |
[INFO] [stdout] 902 | fn table_points_for_rows<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:911:4
[INFO] [stdout]     |
[INFO] [stdout] 911 | fn table_points_for_rows_with_column_points<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModGlobalOpeningEvals` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:921:8
[INFO] [stdout]     |
[INFO] [stdout] 921 | struct QModGlobalOpeningEvals<'a, F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_table_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:934:4
[INFO] [stdout]     |
[INFO] [stdout] 934 | fn split_global_table_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:997:4
[INFO] [stdout]     |
[INFO] [stdout] 997 | fn split_global_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1035:4
[INFO] [stdout]      |
[INFO] [stdout] 1035 | fn booleanity_eval_from_evals<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_booleanity_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1054:4
[INFO] [stdout]      |
[INFO] [stdout] 1054 | fn table_aware_booleanity_final_eval<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1074:4
[INFO] [stdout]      |
[INFO] [stdout] 1074 | fn table_aware_wiring_final_eval<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_root_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1097:4
[INFO] [stdout]      |
[INFO] [stdout] 1097 | fn table_aware_root_final_eval<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_batched_local_hash_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1111:4
[INFO] [stdout]      |
[INFO] [stdout] 1111 | fn table_aware_batched_local_hash_final_eval<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_local_hash_m_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1161:4
[INFO] [stdout]      |
[INFO] [stdout] 1161 | fn table_aware_local_hash_m_final_eval<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_local_hash_b_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1191:4
[INFO] [stdout]      |
[INFO] [stdout] 1191 | fn table_aware_local_hash_b_final_eval<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_local_hash_q_final_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1213:4
[INFO] [stdout]      |
[INFO] [stdout] 1213 | fn table_aware_local_hash_q_final_eval<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `masked_column_weight` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1236:4
[INFO] [stdout]      |
[INFO] [stdout] 1236 | fn masked_column_weight<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `valid_row_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1247:4
[INFO] [stdout]      |
[INFO] [stdout] 1247 | fn valid_row_eval<F: ark_ff::PrimeField>(valid_rows: usize, point: &[F]) -> F {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `root_bits_eval` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1251:4
[INFO] [stdout]      |
[INFO] [stdout] 1251 | fn root_bits_eval<F: ark_ff::PrimeField>(root_bits: &[bool], point: &[F]) -> F {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eq_eval_at_index` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1260:4
[INFO] [stdout]      |
[INFO] [stdout] 1260 | fn eq_eval_at_index<F: ark_ff::PrimeField>(point: &[F], index: usize) -> F {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_relation_holds` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1273:4
[INFO] [stdout]      |
[INFO] [stdout] 1273 | fn local_hash_relation_holds<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_relation_holds_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1287:4
[INFO] [stdout]      |
[INFO] [stdout] 1287 | fn local_hash_relation_holds_from_evals<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `local_hash_residual_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1298:4
[INFO] [stdout]      |
[INFO] [stdout] 1298 | fn local_hash_residual_eval_from_evals<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batched_root_relation_holds` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1329:4
[INFO] [stdout]      |
[INFO] [stdout] 1329 | fn batched_root_relation_holds<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `batched_root_relation_holds_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1336:4
[INFO] [stdout]      |
[INFO] [stdout] 1336 | fn batched_root_relation_holds_from_evals<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `selector_wiring_eval_at_opening` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1349:4
[INFO] [stdout]      |
[INFO] [stdout] 1349 | fn selector_wiring_eval_at_opening<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `selector_wiring_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1368:4
[INFO] [stdout]      |
[INFO] [stdout] 1368 | fn selector_wiring_eval_from_evals<E: Pairing>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `F` is never used
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:215:10
[INFO] [stdout]     |
[INFO] [stdout] 215 |     type F = Fr;
[INFO] [stdout]     |          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Circuit` is never constructed
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:326:12
[INFO] [stdout]     |
[INFO] [stdout] 326 |     struct Circuit<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `num_pcs_variables` is never used
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait AmhCircuitInfo {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 18 |     fn num_pcs_variables(&self) -> Option<usize>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `debug` is never used
[INFO] [stdout]    --> src/protocol/snark/groth16/circuit_opt.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<F: PrimeField> AmhCircuit<F> {
[INFO] [stdout]     | --------------------------------- method in this implementation
[INFO] [stdout] 132 |     pub fn debug(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_trace` is never used
[INFO] [stdout]  --> src/qmod/checker.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub fn check_trace<F: PrimeField>(
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_dimensions` is never used
[INFO] [stdout]   --> src/qmod/checker.rs:24:4
[INFO] [stdout]    |
[INFO] [stdout] 24 | fn check_dimensions<F: PrimeField>(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_boolean_matrix` is never used
[INFO] [stdout]   --> src/qmod/checker.rs:69:4
[INFO] [stdout]    |
[INFO] [stdout] 69 | fn decode_boolean_matrix<F: PrimeField>(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_hash_relation` is never used
[INFO] [stdout]   --> src/qmod/checker.rs:93:4
[INFO] [stdout]    |
[INFO] [stdout] 93 | fn check_hash_relation<F: PrimeField>(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_wiring` is never used
[INFO] [stdout]    --> src/qmod/checker.rs:133:4
[INFO] [stdout]     |
[INFO] [stdout] 133 | fn check_wiring<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_child_wiring` is never used
[INFO] [stdout]    --> src/qmod/checker.rs:154:4
[INFO] [stdout]     |
[INFO] [stdout] 154 | fn check_child_wiring<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check_root` is never used
[INFO] [stdout]    --> src/qmod/checker.rs:177:4
[INFO] [stdout]     |
[INFO] [stdout] 177 | fn check_root<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModError` is never used
[INFO] [stdout]  --> src/qmod/error.rs:2:10
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum QModError {
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CompressionOutput` is never constructed
[INFO] [stdout]  --> src/qmod/hash.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct CompressionOutput {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compress_parent_bits` is never used
[INFO] [stdout]   --> src/qmod/hash.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn compress_parent_bits<F: PrimeField>(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `row_sum` is never used
[INFO] [stdout]   --> src/qmod/hash.rs:54:15
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) fn row_sum<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `encode_bits_le` is never used
[INFO] [stdout]   --> src/qmod/hash.rs:72:15
[INFO] [stdout]    |
[INFO] [stdout] 72 | pub(crate) fn encode_bits_le(value: u64, width: usize) -> Vec<bool> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `decode_bits_le` is never used
[INFO] [stdout]   --> src/qmod/hash.rs:76:15
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub(crate) fn decode_bits_le(bits: &[bool]) -> Result<u128, QModError> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QMOD_A_HASH_DIGEST_LEN` is never used
[INFO] [stdout]  --> src/qmod/params.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const QMOD_A_HASH_DIGEST_LEN: usize = 4;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModAjtaiParams` is never constructed
[INFO] [stdout]   --> src/qmod/params.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct QModAjtaiParams<F: PrimeField> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_random` and `from_matrix` are never used
[INFO] [stdout]   --> src/qmod/params.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl<F: PrimeField> QModAjtaiParams<F> {
[INFO] [stdout]    | -------------------------------------- associated functions in this implementation
[INFO] [stdout] 28 |     pub fn new_random<R: RngCore>(ell: usize, b: usize, rng: &mut R) -> Result<Self, QModError> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn from_matrix(ell: usize, b: usize, a_hash: DMatrix<u64>) -> Result<Self, QModError> {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_digest` is never used
[INFO] [stdout]    --> src/qmod/params.rs:112:4
[INFO] [stdout]     |
[INFO] [stdout] 112 | fn matrix_digest<F: PrimeField>(a_hash: &DMatrix<u64>) -> Result<Vec<F>, QModError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checked_q_a` is never used
[INFO] [stdout]    --> src/qmod/params.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn checked_q_a(b: usize) -> Result<u64, QModError> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checked_parent_bits` is never used
[INFO] [stdout]    --> src/qmod/params.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn checked_parent_bits(ell: usize, b: usize) -> Result<usize, QModError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_field_safety` is never used
[INFO] [stdout]    --> src/qmod/params.rs:141:4
[INFO] [stdout]     |
[INFO] [stdout] 141 | fn assert_field_safety<F: PrimeField>(m: usize, q_a: u64, t: usize) -> Result<(), QModError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ChildRef` is never used
[INFO] [stdout]  --> src/qmod/trace.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum ChildRef {
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ParentMeta` is never constructed
[INFO] [stdout]   --> src/qmod/trace.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct ParentMeta {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModMerkleTrace` is never constructed
[INFO] [stdout]   --> src/qmod/trace.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct QModMerkleTrace<F: PrimeField> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModPackedLeafLayout` is never constructed
[INFO] [stdout]   --> src/qmod/trace.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct QModPackedLeafLayout {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModPackedLeafDigestBits` is never constructed
[INFO] [stdout]   --> src/qmod/trace.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct QModPackedLeafDigestBits {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/qmod/trace.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Node {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `from_leaf_digest_bits` and `from_packed_raw_leaf_bits` are never used
[INFO] [stdout]    --> src/qmod/trace.rs:53:12
[INFO] [stdout]     |
[INFO] [stdout]  52 | impl<F: PrimeField> QModMerkleTrace<F> {
[INFO] [stdout]     | -------------------------------------- associated functions in this implementation
[INFO] [stdout]  53 |     pub fn from_leaf_digest_bits(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn from_packed_raw_leaf_bits(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pack_raw_leaf_bits` is never used
[INFO] [stdout]    --> src/qmod/trace.rs:130:8
[INFO] [stdout]     |
[INFO] [stdout] 130 | pub fn pack_raw_leaf_bits<F: PrimeField>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `field_bit` is never used
[INFO] [stdout]    --> src/qmod/trace.rs:191:15
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub(crate) fn field_bit<F: PrimeField>(bit: bool) -> F {
[INFO] [stdout]     |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_leaves` is never used
[INFO] [stdout]    --> src/qmod/trace.rs:195:4
[INFO] [stdout]     |
[INFO] [stdout] 195 | fn validate_leaves<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_raw_leaf_bits` is never used
[INFO] [stdout]    --> src/qmod/trace.rs:226:4
[INFO] [stdout]     |
[INFO] [stdout] 226 | fn validate_raw_leaf_bits<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `ceil_div` is never used
[INFO] [stdout]    --> src/qmod/trace.rs:263:4
[INFO] [stdout]     |
[INFO] [stdout] 263 | fn ceil_div(numerator: usize, denominator: usize) -> usize {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_decomposition_le` is never used
[INFO] [stdout]   --> src/utils/field_ops.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) fn bit_decomposition_le<F: PrimeField>(x: u64, bit_length: usize) -> Vec<F> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_num_variables` is never used
[INFO] [stdout]   --> src/utils/matrix.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn compute_num_variables(row: usize, column: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_indices_column_major` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) fn matrix_indices_column_major(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hadamard_product` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub(crate) fn hadamard_product<T: Copy + ark_std::ops::Mul<Output = T>>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new_column_vector` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 | pub fn new_column_vector<T: Clone + PartialEq + Debug + 'static>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `omatrix_to_dmatrix` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub(crate) fn omatrix_to_dmatrix<F: PrimeField, R: Dim, C: Dim>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_poly_by_positions` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:81:15
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub(crate) fn compute_poly_by_positions<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_last_at_point` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn fix_last_at_point<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerate_evaluations` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:104:15
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub(crate) fn enumerate_evaluations<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl<F: PrimeField> Monomial<F> {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn default() -> Monomial<F> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `evaluate` and `degree` are never used
[INFO] [stdout]    --> src/utils/polynomial.rs:214:12
[INFO] [stdout]     |
[INFO] [stdout] 179 | impl<F: PrimeField> UnivariatePolynomial<F> {
[INFO] [stdout]     | ------------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn evaluate(&self, x: F) -> F {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn degree(&mut self) -> Option<u32> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mle_evals_to_coeffs` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn mle_evals_to_coeffs<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_vector` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:428:8
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn scale_vector<F>(vector: Vec<F>, k: F) -> Vec<F>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dense_coeffs_to_sparse_poly` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:439:8
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub fn dense_coeffs_to_sparse_poly<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_scale_sparse_polynomial` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 | pub fn manual_scale_sparse_polynomial<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_terms` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:521:4
[INFO] [stdout]     |
[INFO] [stdout] 521 | fn multiply_terms<T>(term1: &T, term2: &T) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_multiply_sparse_polynomials` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:548:8
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub fn manual_multiply_sparse_polynomials<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_constant` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:582:8
[INFO] [stdout]     |
[INFO] [stdout] 582 | pub fn subtract_constant<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |                  ^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 12 - pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout] 12 + pub type A256<E> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<<E as /* Trait */>::ScalarField, 256>;
[INFO] [stdout]    |                                             +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:396:21
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     let _ = acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:507:13
[INFO] [stdout]     |
[INFO] [stdout] 507 |             combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 507 |             let _ = combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |             combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let _ = combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 509 |             let _ = combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:302:13
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut rng = StdRng::seed_from_u64(0u64);
[INFO] [stdout]     |             ----^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rng`
[INFO] [stdout]    --> src/protocol/snark/gadgets/matrix.rs:302:13
[INFO] [stdout]     |
[INFO] [stdout] 302 |         let mut rng = StdRng::seed_from_u64(0u64);
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `polynomial` is never read
[INFO] [stdout]    --> src/utils/polynomial.rs:377:48
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut polynomial: Vec<Monomial<F>> = Vec::new();
[INFO] [stdout]     |                                                ^^^^^^^^^^ this value is reassigned later and never used
[INFO] [stdout] 378 |         polynomial = [p1, p2].concat();
[INFO] [stdout]     |         ---------- `polynomial` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `transpose` is never used
[INFO] [stdout]   --> src/iop/sumcheck/mod.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn transpose<T: Clone>(matrix: Vec<Vec<T>>) -> Vec<Vec<T>> {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `PreprocessingFailed` is never constructed
[INFO] [stdout]  --> src/protocol/errors.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum ProtocolError {
[INFO] [stdout]   |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 8 |     PreprocessingFailed(String),
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `ProtocolError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `A256` is never used
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `trim` is never used
[INFO] [stdout]  --> src/protocol/public_parameters.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub trait PublicParameters<F: PrimeField + Absorb> {
[INFO] [stdout]   |           ---------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 9 |     fn trim(
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `QModCommitmentLayout` is never used
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:15:10
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub enum QModCommitmentLayout {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModProofSizeBreakdown` is never constructed
[INFO] [stdout]   --> src/protocol/qmod/proof.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct QModProofSizeBreakdown {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_proof` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:104:12
[INFO] [stdout]     |
[INFO] [stdout] 103 | impl QModProofSizeBreakdown {
[INFO] [stdout]     | --------------------------- associated function in this implementation
[INFO] [stdout] 104 |     pub fn from_proof<E: Pairing>(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `qmod_global_opening_eval_count` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:130:4
[INFO] [stdout]     |
[INFO] [stdout] 130 | fn qmod_global_opening_eval_count<F: ark_ff::PrimeField>(params: &QModAjtaiParams<F>) -> usize {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `serialized_size` is never used
[INFO] [stdout]    --> src/protocol/qmod/proof.rs:135:4
[INFO] [stdout]     |
[INFO] [stdout] 135 | fn serialized_size<T: CanonicalSerialize>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_local_hash_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:517:4
[INFO] [stdout]     |
[INFO] [stdout] 517 | fn prove_local_hash_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prove_booleanity_from_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:560:4
[INFO] [stdout]     |
[INFO] [stdout] 560 | fn prove_booleanity_from_rows<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:785:15
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub(crate) fn o1_global_table_opening_points<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `o1_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:832:4
[INFO] [stdout]     |
[INFO] [stdout] 832 | fn o1_global_opening_evals<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:862:4
[INFO] [stdout]     |
[INFO] [stdout] 862 | fn table_points_for_rows<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:871:4
[INFO] [stdout]     |
[INFO] [stdout] 871 | fn table_points_for_rows_with_column_points<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:881:15
[INFO] [stdout]     |
[INFO] [stdout] 881 | pub(crate) fn table_point<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_subproof_inputs` is never used
[INFO] [stdout]    --> src/protocol/qmod/prover.rs:954:15
[INFO] [stdout]     |
[INFO] [stdout] 954 | pub(crate) fn derive_subproof_inputs<E: Pairing>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `derive_table_subproof_inputs` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1007:15
[INFO] [stdout]      |
[INFO] [stdout] 1007 | pub(crate) fn derive_table_subproof_inputs<E: Pairing>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `append_global_opening_context` is never used
[INFO] [stdout]     --> src/protocol/qmod/prover.rs:1218:15
[INFO] [stdout]      |
[INFO] [stdout] 1218 | pub(crate) fn append_global_opening_context<F: PrimeField>(
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_eval_count` is never used
[INFO] [stdout]   --> src/protocol/qmod/table.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl QModTableShape {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn total_eval_count(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `total_eval_count` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout]  85 | impl QModTableAwareShape {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn total_eval_count(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModTablePolys` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/table.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 152 | pub struct QModTablePolys<F: PrimeField> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `shape` is never read
[INFO] [stdout]    --> src/protocol/qmod/table.rs:169:9
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct QModLocalHashCoeffPolys<F: PrimeField> {
[INFO] [stdout]     |            ----------------------- field in this struct
[INFO] [stdout] 169 |     pub shape: QModTableAwareShape,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `QModLocalHashCoeffPolys` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_trace` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:209:12
[INFO] [stdout]     |
[INFO] [stdout] 208 | impl<F: PrimeField> QModTablePolys<F> {
[INFO] [stdout]     | ------------------------------------- associated function in this implementation
[INFO] [stdout] 209 |     pub fn from_trace(
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_wiring_diff_poly` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:850:4
[INFO] [stdout]     |
[INFO] [stdout] 850 | fn table_aware_wiring_diff_poly<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_aware_shifted_parent_point` is never used
[INFO] [stdout]    --> src/protocol/qmod/table.rs:996:4
[INFO] [stdout]     |
[INFO] [stdout] 996 | fn table_aware_shifted_parent_point<F: PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `invalid_proof_as_false` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:621:4
[INFO] [stdout]     |
[INFO] [stdout] 621 | fn invalid_proof_as_false(result: Result<bool, ProtocolError>) -> Result<bool, ProtocolError> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_commitments` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:806:4
[INFO] [stdout]     |
[INFO] [stdout] 806 | fn global_opening_commitments<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:821:4
[INFO] [stdout]     |
[INFO] [stdout] 821 | fn global_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `global_table_opening_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:852:4
[INFO] [stdout]     |
[INFO] [stdout] 852 | fn global_table_opening_points<E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:902:4
[INFO] [stdout]     |
[INFO] [stdout] 902 | fn table_points_for_rows<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `table_points_for_rows_with_column_points` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:911:4
[INFO] [stdout]     |
[INFO] [stdout] 911 | fn table_points_for_rows_with_column_points<F: ark_ff::PrimeField>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QModGlobalOpeningEvals` is never constructed
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:921:8
[INFO] [stdout]     |
[INFO] [stdout] 921 | struct QModGlobalOpeningEvals<'a, F> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_table_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:934:4
[INFO] [stdout]     |
[INFO] [stdout] 934 | fn split_global_table_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `split_global_opening_evals` is never used
[INFO] [stdout]    --> src/protocol/qmod/verifier.rs:997:4
[INFO] [stdout]     |
[INFO] [stdout] 997 | fn split_global_opening_evals<'a, E: Pairing>(
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `booleanity_eval_from_evals` is never used
[INFO] [stdout]     --> src/protocol/qmod/verifier.rs:1035:4
[INFO] [stdout]      |
[INFO] [stdout] 1035 | fn booleanity_eval_from_evals<F: ark_ff::PrimeField>(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `num_pcs_variables` is never used
[INFO] [stdout]   --> src/protocol/snark/groth16/circuit.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait AmhCircuitInfo {
[INFO] [stdout]    |           -------------- method in this trait
[INFO] [stdout] 18 |     fn num_pcs_variables(&self) -> Option<usize>;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `debug` is never used
[INFO] [stdout]    --> src/protocol/snark/groth16/circuit_opt.rs:132:12
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl<F: PrimeField> AmhCircuit<F> {
[INFO] [stdout]     | --------------------------------- method in this implementation
[INFO] [stdout] 132 |     pub fn debug(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bit_decomposition_le` is never used
[INFO] [stdout]   --> src/utils/field_ops.rs:27:15
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub(crate) fn bit_decomposition_le<F: PrimeField>(x: u64, bit_length: usize) -> Vec<F> {
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_num_variables` is never used
[INFO] [stdout]   --> src/utils/matrix.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn compute_num_variables(row: usize, column: usize) -> usize {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `matrix_indices_column_major` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:157:15
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub(crate) fn matrix_indices_column_major(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hadamard_product` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:164:15
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub(crate) fn hadamard_product<T: Copy + ark_std::ops::Mul<Output = T>>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `omatrix_to_dmatrix` is never used
[INFO] [stdout]    --> src/utils/matrix.rs:178:15
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub(crate) fn omatrix_to_dmatrix<F: PrimeField, R: Dim, C: Dim>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_poly_by_positions` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:81:15
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub(crate) fn compute_poly_by_positions<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fix_last_at_point` is never used
[INFO] [stdout]   --> src/utils/polynomial.rs:97:15
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub(crate) fn fix_last_at_point<F: PrimeField>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `enumerate_evaluations` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:104:15
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub(crate) fn enumerate_evaluations<F: PrimeField>(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `default` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 142 | impl<F: PrimeField> Monomial<F> {
[INFO] [stdout]     | ------------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn default() -> Monomial<F> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mle_evals_to_coeffs` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn mle_evals_to_coeffs<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `scale_vector` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:428:8
[INFO] [stdout]     |
[INFO] [stdout] 428 | pub fn scale_vector<F>(vector: Vec<F>, k: F) -> Vec<F>
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `dense_coeffs_to_sparse_poly` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:439:8
[INFO] [stdout]     |
[INFO] [stdout] 439 | pub fn dense_coeffs_to_sparse_poly<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_scale_sparse_polynomial` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:482:8
[INFO] [stdout]     |
[INFO] [stdout] 482 | pub fn manual_scale_sparse_polynomial<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `multiply_terms` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:521:4
[INFO] [stdout]     |
[INFO] [stdout] 521 | fn multiply_terms<T>(term1: &T, term2: &T) -> T
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `manual_multiply_sparse_polynomials` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:548:8
[INFO] [stdout]     |
[INFO] [stdout] 548 | pub fn manual_multiply_sparse_polynomials<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `subtract_constant` is never used
[INFO] [stdout]    --> src/utils/polynomial.rs:582:8
[INFO] [stdout]     |
[INFO] [stdout] 582 | pub fn subtract_constant<F>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters in type aliases are not enforced
[INFO] [stdout]   --> src/protocol/impls/config.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |                  ^^^^^^^ will not be checked at usage sites of the type alias
[INFO] [stdout]    |
[INFO] [stdout]    = note: this is a known limitation of the type checker that may be lifted in a future edition.
[INFO] [stdout]            see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
[INFO] [stdout]    = help: add `#![feature(lazy_type_alias)]` to the crate attributes to enable the desired semantics
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: remove this bound
[INFO] [stdout]    |
[INFO] [stdout] 12 - pub type A256<E: Pairing> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout] 12 + pub type A256<E> = AjtaiMatrixSize<E::ScalarField, 256>;
[INFO] [stdout]    |
[INFO] [stdout] help: fully qualify this associated type
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub type A256<E: Pairing> = AjtaiMatrixSize<<E as /* Trait */>::ScalarField, 256>;
[INFO] [stdout]    |                                             +  +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:396:21
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 396 |                     let _ = acc.add_mle_list(vec![Arc::new(mles.0), Arc::new(mles.1)], gamma);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:507:13
[INFO] [stdout]     |
[INFO] [stdout] 507 |             combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 507 |             let _ = combined.add_mle_list(ht, gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:508:13
[INFO] [stdout]     |
[INFO] [stdout] 508 |             combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 508 |             let _ = combined.add_mle_list(ar1, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/protocol/impls/opt/prover_opt.rs:509:13
[INFO] [stdout]     |
[INFO] [stdout] 509 |             combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 509 |             let _ = combined.add_mle_list(br2, -gammas[i] * alpha);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `LogQ` should have an upper case name
[INFO] [stdout]    --> src/utils/matrix.rs:200:50
[INFO] [stdout]     |
[INFO] [stdout] 200 |     struct AjtaiMatrixSize<const R: usize, const LogQ: usize> {}
[INFO] [stdout]     |                                                  ^^^^ help: convert the identifier to upper case: `LOG_Q`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `LogQ` should have an upper case name
[INFO] [stdout]    --> src/utils/matrix.rs:201:32
[INFO] [stdout]     |
[INFO] [stdout] 201 |     impl<const R: usize, const LogQ: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout]     |                                ^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]     |
[INFO] [stdout] 201 -     impl<const R: usize, const LogQ: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout] 201 +     impl<const R: usize, const LOG_Q: usize> Size for AjtaiMatrixSize<R, LogQ> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a", kill_on_drop: false }`
[INFO] [stdout] 4d3fe8ab4135e0d2f65463fa70b79c543799ae7c134c2b69b0cf2c564c73125a
